Michal Kutil ČVUT FEL Praha

Slides:



Advertisements
Podobné prezentace
Způsob zápisu JavaScriptu do dokumentu  JavaScript se do webové stránky dá zapsat třemi způsoby:  Pomocí značek do proudu dokumentu  Pomocí značek s.
Advertisements

ŘÍDÍCÍ STRUKTURY - PODMÍNKY
Vlastní skript může být umístěn: v hlavičce stránky v těle stránky
Dynamické dokumenty na straně klienta Informatika pro ekonomy II.
IKT PHP PHP Tvorba formuláře - 10 Mgr. Josef Nožička
Formuláře jsou důležitou součástí stránek, slouží:  k přihlašování k některým stránkám (eshopy, bakaláři, diskuze na webu apod.)  k odeslání údajů do.
Formuláře Formuláře lze nalézt téměř na každém webu. Formuláře lze nalézt téměř na každém webu. Použití formulářů: Použití formulářů: Blog Blog Uživatelské.
HYPERTEXT PREPROCESSOR. JAZYK PHP. Jazyk PHP (Hypertext PreProcessor) je intepretovaný jazyk určený pro web. Je celkem jednoduchý, snadno přenositelný.
PHP Souhrnné cvičení Mgr. Josef Nožička IKT PHP
VISUAL BASIC Práce se soubory.
Algoritmy I. Cvičení č. 10.
C# pro začátečníky Mgr. Jaromír Osčádal
PHP – vkládání souborů a html 5
Algoritmy I Cvičení č. 3.
Základy informatiky Internet Ing. Roman Danel, Ph.D. Institut ekonomiky a systémů řízení Hornicko – geologická fakulta.
Materiály k přednášce Úvod do programování Ondřej Čepek.
Tvorba webových aplikací
A1PRG - Programování – Seminář Ing. Michal Standardní knihovní funkce pro práci se soubory 13 Verze
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B8 Autor Ing. Jiří Kalousek Období vytvoření listopad.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
PHP FUNKCE DANIEL BEZNOSKOV. Seznam funkcí Strlen File Substr Trim File_exists Strrev Strtr.
Tomáš Dlouhý – prezentace Y13ANW - Redakční systém WNC Tomáš Dlouhý Y13ANW – První prezentace
PHP – zasílání dat z formuláře
PHP – Základy programování
Práce se soubory Soubory se používají pro ukládání dat pro pozdější použití. Dalším a lepším způsobem jak ukládat data je použití databáze. Soubory se.
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B20 Autor Ing. Jiří Kalousek Období vytvoření Duben 2013.
Maturitní okruh 22: Úvod do HTML. Značkovací a klasické jazyky Klasické: převládá strukturovaný text (programovací kód), skripty jsou prováděny na straně.
Cvičení.
PHP Úvod do programování Kontaktní údaje: Ing. Antonín Skopec
OSNOVA: a)Programování se soubory b)Záloha databáze v souboru c) Příklady Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače a programování.
Návrh a tvorba WWW Cvičení 7 PHP & Oracle - Bezpečnost.
Návrh a tvorba WWW Cvičení 4
Jazyk PHP Programovací jazyk PHP (Hypertext preprocessor) je skriptovací jazyk, který běží na straně serveru. KLIENT - SERVER Server posílá do vašeho počítače.
DHTML Jan Felger. Kapitola 0: Základní tagy Základy HTML © Jan Felger 2005 Úvod Tato prezentace zobrazuje pouze zcela základní minimum znalostí, které.
A1PRG - Programování – Seminář Ing. Michal Standardní knihovní funkce pro vstup a výstup 12 Verze
Návrh a tvorba WWW Přednáška 5 Úvod do jazyka PHP.
Dynamické dokumenty na straně serveru Informatika pro ekonomy II přednáška 8.
AJAX nejmodernější webová technologie… seminář pro učitele ZŠ a SŠ Mgr. Marek Osuchowski Ostravská univerzita © 2011.
Úvod do JavaScriptu JavaScript je p JavaScript je programovací jazyk, který se používá na webových stránkách. JavaScript je typu KLIENT - KLIENT To znamená,
7. Typ soubor Souborem dat běžně rozumíme uspořádanou množinu dat, uloženou mimo operační paměť počítače (na disku). Pascalský soubor je abstrakcí skutečného.
WWW stránky – Úvod Mgr. Lenka Švancarová.
PHP Vytváření formuláře.
2 UDÁLOSTI ONMOUSEOVER, ONMOUSEOUT Odkaz Událost je část kódu vyvolana za určité (uživatelem vyvolané) situace (kliknutí myší, přejetím kurzorem myši,
Elektronický registr oznámení Zpracoval(a): Mgr. František Rudecký
PROGRAMOVÁNÍ V PHP PERSONAL HOME PAGES FORMULÁŘE.
Základy syntaxe jazyka PHP PHP JE TECHNOLOGIE BĚŽÍCÍ NA SERVERU. PHP JE TECHNOLOGIE BĚŽÍCÍ NA SERVERU. Typický PHP skript obsahuje: Typický PHP skript.
PHP PHP - úvod - 02 Mgr. Josef Nožička IKT PHP
Úvod do PHP IZI 228.
PROGRAMOVÁNÍ V PHP PERSONAL HOME PAGES CYKLY V PHP.
PROGRAMOVÁNÍ V PHP PERSONAL HOME PAGES INCLUDE. 2 PŘÍKAZ INCLUDE SLOUŽÍ K VLOŽENÍ SOUBORU DOVNITŘ PHP SKRIPTU. PŘÍKAZ INCLUDE PŘEDSTAVTE SI TŘEBA, ŽE.
Formuláře Formuláře uzavíráme do elementů Formuláře uzavíráme do elementů a a Tyto elementy jsou součástí jazyka XHTML, to znamená, že při použití v PHP.
Práce s řetězci Řetězec je libovolný text nebo libovolná skupina znaků. Řetězec se také označuje jako string. Činnosti prováděné s řetězci: Počítání znaků.
Přístup k databázím z WWW PHP+MySQL. Síť WWW je v současné době místem pro dynamické, často databázemi řízené webové aplikace. Tvorba webového serveru.
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B8 Autor Ing. Jiří Kalousek Období vytvoření listopad.
Soubory BI-PA1 Programování a algoritmizace 1, ZS Katedra teoretické informatiky © Miroslav Balík Fakulta informačních technologií České vysoké.
PHP Programy pro tvorbu WWW stránek - 01
PROGRAMOVÁNÍ V PHP PERSONAL HOME PAGES FORMULÁŘE + PODMÍNKY + SWITCH.
JavaScript úvod. Jazyky webového vývojáře Dynamická stránka  aktivně mění svůj obsah v reakci na činnost uživatele  zpracování na straně serveru (PHP,
HYPERTEXT PREPROCESSOR. JAZYK PHP. VYUŽITÍ JAZYKA Programování dynamických internetových stránek a webových aplikací vytvoření šablony webu kniha návštěv.
PHP Stručný úvod.
Batové dávky Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Vojtěch Mrózek. Dostupné z Metodického portálu ISSN: ,
Návrh a tvorba WWW Cvičení 1 HTML 5. Pracovní prostředí Vývojové prostředí NetBeans ( Webový server Apache (
PHP ● Personal Home Page ● PHP: Hypertext Preprocessor.
HYPERTEXT PREPROCESSOR. JAZYK PHP. VYUŽITÍ JAZYKA Programování dynamických internetových stránek a webových aplikací vytvoření šablony webu kniha návštěv.
Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Šablona 32 VY_32_INOVACE_034.ICT.34 Tvorba webových stránek – PHP technologie.
NÁZEV ŠKOLY:SOŠ Net Office, spol. s r.o. Orlová Lutyně
Linux - skripty Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
TNPW1 JavaScript Ing. Jiří Štěpánek.
Čo je PHP- PHP (PHP: Hypertext Preprocessor) je populárny open source (prístupné zdrojové kódy) skriptovací programovací jazyk Používa najmä na programovanie.
Tvorba webových stránek
Transkript prezentace:

Michal Kutil ČVUT FEL Praha kutilm@fel.cvut.cz PHP Michal Kutil ČVUT FEL Praha kutilm@fel.cvut.cz

1. Úvod

Zdroje PHP a MySQL rozvoj webových aplikací Luke Welling a Laura Thomsonová; Softpress; 2004 PHP v příkladech V. Smilek, J. Berit a L. Mrázek L.; KOPP; 2001 http://www.php.cz http://interval.cz http://www.builder.cz Ukázat www.php.cz

Historie PHP Personal Home Page PHP Hypertext Preprocesor 1994 - Rasmus Lerdorf Informace o návštěvnících jeho stránek Skriptovací jazyk Dal k dispozici zdrojové kódy Open Source produkt Rekurzivní název jako: GNU Gnu’s Not Unix

Vývoj používání PHP www.php.net/usage.php

Charakteristika PHP Skriptovací jazyk Dynamické vytváření webových stránek Jednoduchost Nezávislost na platformě Vysoký komfort práce s databázemi V kódu lze lehce kombinovat HTML a PHP Syntaxe podobná C, C++, Javě

Mechanismus zpracování Webový prohlížeč Server Webový server Apache, IIS Požadavek Souborový systém *.html, *.gif, *.jpeg, *.php Webová stránka html, gif, jpeg, js NE PHP! *.html,*.gif,… *.php PHP Instalace SERVERU, Firefoxe, a webdeveloper extension, pspad Zjistit jak moc toho vědi o HTML? - Rychlokurz o HTML - Ukázka html na úvodní stránce Méďovy včelnice Odpověď Database MySQL

2. Základy programování

Vzorová aplikace Nejběžnější aplikace Webové stránky Méďovy včelnice Zpracování formulářů Webové stránky Méďovy včelnice Seznam produktů Objednávkový formulář Zpracování formuláře Uložení objednávky (soubor, databáze) Odeslání potvrzení o přijetí emailem

Seznam produktů Objednávkový formulář Soubor formular.php Jde pouze o HTML Atribut action a method tágu form Atribut name tágu input

Zpracování objednávky Soubor s názvem uloženým v atributu action tágu form: objednavka.php Soubor musí mít koncovku *.php Alternativní konfigurace serveru: *.php3, *.php4, *.php5, *.phtml, … Výstupem bude opět jen HTML!

Vkládání PHP do HTML Pod nadpis <h2> vložte následující: echo '<p>Objednávka byla zpracována.</p>'; ?>  Otevřete stránku přes server a prostudujte zdrojový kód. Zkontrolovat že do prohlížeče prošel pouze HTML kód. - prohlížeč nemusí rozumět PHP

Obsah souboru s PHP kódem HTML Značky PHP: <?php … ?>, <? … ?>, … Příkazy PHP: echo Prázdné znaky Komentáře: Blokové /* … */ Řádkové // … , # … Další PHP značky: script: <script language=‘php’ > echo ‘ahoj’ </script> asp: <% echo ‘ahoj’ %> Prázdné znaky: vysvětlit v html – ukázat na příkladu vysvětlit v php – echo ‘ahoj’; echo ‘ světe’; – echo ‘ahoj ’; echo ‘ světe’; Komentáře: - Komentář v html: <!-- --> -  Napsat komentář na začátek kódu s autorem, datem a popisem souboru

Vkládání dynamického obsahu Zatím bychom se bez PHP obešli Dynamická změna obsahu stránek Na základě vnějších vlivů Na základě chování uživatele  Doplňte stránku se zpracováním objednávky o informaci o datu a času objednání <?php echo ‘<p>Objednávka byla zpracována v ‘; echo date(‘H:I, jS F’); echo ‘</p>’; ?>  na www.php.cz nalezt informaci o funkci date a pohrat si.

Data z formuláře Data jsou uloženy v proměnných Proměnné začínají znakem $ Data dostupná přes tři různé proměnné $medsv $_POST['medsv'] ($_GET['medsv']) $HTTP_POST_VARS['medsv'] Existence v závislosti na verzi a konfiguraci PHP  Doplňte objednávku o přehled počtu nakoupených věcí Prvni varianta dostupna pouze pokud je nastavena konfigurace register_globals (Bezpečnost skriptu) Druha varianta dostupna pouze od verze 4.1.0

Uživatelem deklarované proměnné Proměnné vždy začínají znakem $ Proměnné se nemusí deklarovat Přiřazování hodnot proměnným $celkovemnozstvi = 0; $celkovacena = 0.00; $celkovacena = $cenaposleve; $jmenoobchodu = ‘Méďova včelnice’; Promenne které jsou tvořeny v průběhu skriptu jsou v první variantě (Podmínky pro nazvi na straně: 57)

Operátory + Sčítání $a + $b; $c + 30 - Odečítání $a - $b; $c - 30 * Násobení $a * $b; $c * 30 / Dělení $a / $b; $c / 30 % Modus (zbytek po dělení) $a % $b . Spojení (Spojuje textové řetězce)  S použitím operátoru spojení vypisujte přehled objednaných věcí pomocí jednoho příkazu echo  Vypište celkový počet objednaných věcí Funkce isset, empty Na odpoledne: Zavést cenu za produkt: define(‘CENA’,50); Přehled cen kolik jsem nakoupil Celková cena k zaplacení

Řídící struktury Rozhodování pomocí podmínek if ( podmínka ) { příkaz(y) } else { jiný(é) příkaz(y) } Podmínka - porovnávací a binární operátory Bloky příkazů {}  Doplňte zpracování objednávky, tak aby se vypsalo že si uživatel nic neobjednal Porovnávací a binární operátory: strana 66 Blokové prvky {} ELSE – nepovinné Na odpoledne - sleva při objednání medu světlého: 10-49 5%; 50-99 10%; 100- 15%

Příkaz SWITCH Podobné příkazu if, ale možno určit více hodnot výsledku switch ( výraz ) { case hodnota : příkaz(y); break; case hodnota : příkaz(y); break; default : příkaz(y); break; }  Doplňte objednávku o marketinkový průzkum návratnosti reklamy Do formuláře přidat <SELECT name=“reklama”><option value=“a”>Jsem stálý zákazník</option> ….

Opakování akcí while (podmínka) { příkaz(y) } for (výraz1; podmínka; výraz2) { příkaz(y) }  Vytvořte stránku s ceníkem (tabulkou). Cena dopravy zboží je závislá na vzdálenosti.

Opakovací cvičení Operátory if switch Na začátku skriptu vytvořit jednoduché proměnné ($medsv=$_POST['medsv']) Operátory Zavést cenu za produkt Přehled kolik mě co stálo Celkově k zaplacení if Vypsat varování pokud si uživatel nic neobjednal Sleva z celkové částky (10-49kg 5%, 50-99kg 10%, 100 a více 15%) switch Zjistit návratnost reklamy

3. Zajímavé možnosti PHP

Pole Číselně indexovaná pole Asociativní pole Vícerozměrná pole Řazení polí Med světlý Med tmavý Vosk produkty

Číselně indexované pole Vytvoření pole $produkty=array('Med světlý','Med tmavý','Vosk'); $produkty=array(1=>'Med světlý','Med tmavý','Vosk'); Přístup k obsahu pole $produkty[0] $produkty[3]='Medovina';  Informaci o datu objednání zobrazte korektně s českými názvy měsíců Řazení pole: sort()

Asociativní pole Vytvoření pole Přístup k obsahu pole $cena=array('medsv'=>80,'medtm'=>90,'vosk'=>50); Přístup k obsahu pole $cena['medsv'] $cena['vosk']='nezjištěno';  Použijte k výpočtu ceny za objednávku asociativní pole, předchozí příkazy pouze zakomentujte Řazení pole: asort(), ksort()

"Recyklace" kódu Uživatelem definovaná funkce function echop($text) { echo '<p>'.$text.'</p>'; } Vložení externího souboru include ('menu.inc.php');  Použijte funkci echop při zpracovaní objednávky  Vytvořte soubor menu.inc.php s odkazy na všechny doposud vytvořené soubory, tento soubor pomocí include vložte na konec každé stránky

4. Ukládání a získávání dat

Uložení objednávky Zápis do souboru $fp = fopen('objednavky.txt','a'); Otevření souboru Zápis Zavření souboru $fp = fopen('objednavky.txt','a'); fwrite($fp, $text); fclose($fp);  Uložte objednávku do souboru objednavky.txt Módy strana 90: (r, w, a)

Načtení objednávky ze souboru Načtení příkazem file $nacteneobj=file('objednavky.txt');  Vytvořte soubor prehledobj.php jenž zobrazí všechny doposud provedené objednávky

5. Pokročilé programování

Proměnná chameleón $jmenoproduktu = 'medsv'; $$jmenoproduktu = 52; stejné jako $medsv echo $medsv; // vypise 52

Úvozovky Podobný význam jako apostrofy Větší inteligence při interpretaci echo "Objednáno $medsv kg medu sv."; Vkládání znaku ENTER a TAB echo "\n\t"; Pozor na úvozovky echo "Citace zapisujem do \"";

Mail Odeslaní se provádí pomocí příkazu: mail ( 'jmeno@example.cz', 'nadpis zprávy', 'zpráva ...'); Testovat skript tak, že jeho výsledek nejdříve vytisknete na obrazovku a poté teprve použijete příkaz mail(…) Nikdy neumisťujte tento příkaz do cyklu

Já Honza Krákora ČVUT FEL Praha krakorj@felk.cvut.cz

Podpora emailu Služba pošty není všude podporována Je třeba být hodný na administrátora serveru  nechat si nastavit SMTP a Firewall nastavit si PHP pro odesílání emailů (SMTP nastavení) Někteří poskytovatelé standardně podporují (např. Webzdarma)

6. PHP a jiní poskytovatelé Poskytovatelé serverů s PHP (např. webzdarma, Pípni) PHP, email, DB (MySQL), logy atd. Placené zálohy, logy, servis bezpečnostních služeb Free – neplacené bez záloh, levné  Založte si konto u http://www.webzdarma.cz , připojte se pomocí FTP a nahrajte tam svojí presentaci  Vytvořte skript email.php na posílání emailů z vaší aplikace

“.ahoj.pepo...\n\r\t” -> “ahoj.pepo” 7. Práce s řetězci V PHP velmi jednoduché Silná podpora viz. www.php.net funkce Trim(), Ltrim(), Rtrim() odstraňují prázdné znaky z řetězce “.ahoj.pepo...\n\r\t” -> “ahoj.pepo”

Trim $str = array('a', 'ahoj', 'ahoj pepo ', ' ahoj pepo '); /* tupy vypsani */ foreach($str as $i){ echo 'retezec: "'.$i."\"\n"; } /* trim funkce */ echo 'retezec: "'.trim($i)."\"\n";

Rtrim a Ltrim /* rtrim (chop) funkce */ foreach($str as $i){ echo 'retezec: "'.rtrim($i)."\"\n"; } /* ltrim */ echo 'retezec: "'.ltrim($i)."\"\n"; ?>  upravte skript na zpracování emailu tak aby ořízl řetězec emailu o prázdné znaky

$out = str_replace($starystr, $novystr, $str) funkce str_replace() přemaže řetězec starystr řetězcem novystr v řetězci str, výsledek uloží do out $out = str_replace($starystr, $novystr, $str)  Upravte vaše tabulky aby se vypisoval sudý a lichý řádek jinak (použijte str_replace a CSS)  Upravte text zprávy odesílané emailem aby se místo znaku @ objevil text (zavinac)

Implode, explode atd. funkce Implode() funkce Explode() sloučí položky pole do řetězce str, mezi jednotlivá políčka vloží znaky str = explode(znaky, pole); funkce Explode() rozdělí řetězec str do pole řetězců pole, dělení je dáno parametrem hledej pole = explode(hledej, str);

Další funkce funkce strlen ( string ) funkce strtolower ( string ) funkce strtoupper ( string ) funkce htmlspecialchars( string ) funkce nl2br( string ) funkce ereg (pattern, string , out)

To je konec   