Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Návrh a tvorba WWW Cvičení 4
XML, XHTML Úvod do PHP
2
Extenible Markup Language (XML)
Použití XML „Inteligentní“ webové stránky formátování obsahu dle výstupního zařízení (PC, mobilní telefony, webTV, organizéry nebo třeba herní konzole ) Elektronické publikování generovaní např. PDF, Windows Help, … Univerzální datový formát elektronické obchodování, výměnný formát heterogenních aplikací , … … Syntaxe XML XML dokument má pouze jeden kořenový element každý element musí mít počáteční a koncovou značku ( <note>…</note> ), nebo musí jít o prázdný element (<item />) není povoleno křížení elementů název elementů a atributů může začínat pouze písmenem, podtržítkem nebo dvojtečkou zápis vyhrazených znaků pomocí zástupných entit (&entita;) komentáře nemůžou být vnořené a nesmí obsahovat --
4
export do xml I. zdrojový kód: blok_4/rezervace.xml
5
export do xml II. zdrojový kód: blok_4/rezervace.xml
6
Extensible HyperText Markup Language
všechny elementy a atributy musí být malými písmeny, XHTML je case-sensitive všechny hodnoty atributů musí být v XHTML v uvozovkách všechny XHTML tagy musí být párové (prázdné tagy se musí ukončit lomítkem, např. <img />) tagy se nesmí nikdy křížit striktní XHTML neobsahuje žádné atributy sloužící k formátování (oproti HTML jsou z XHTML vypuštěny formátovací tagy , např. font, b, i). vkládané skripty na straně klienta (např. javascript) by měly být vloženy do sekce CDATA (starší prohlížeče CDATA nepodporují) <script><![CDATA[ zde bude kód skriptu ]]></script> znak & musí být převeden na html entitu i pokud je součástí URL. Deklarace XML Deklarace DTD (Strict, Transitional, Frameset) Kořenový element html obsahuje atribut xmlns <?xml version="1.0" encoding="iso "?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " <html xmlns=" xml:lang="cs" lang="cs">
7
Jmenné prostory v XHTML
Jmenný prostor musí být deklarován pomocí předpony u elementu html. Vlastní element můžete použít v XHTML dokumentu spolu s deklarovanou předponou Jméno elementu lze použít jako selektoru v kaskádovém stylu, musí však být uvedeno včetně předpony jmenného prostoru. <html xmlns=" xmlns:wnd=" <p>běžný odstavec</p> <wnd:wdir>260</wnd:wdir> <wnd:wspd>6</wnd:wspd> <wnd:p>element p spadá do jiným namespace a proto se nejedná o odstavec</wnd:p> <style type="text/css"> wnd|wspd, wnd|wdir { display: block; font-weight: bold; border: 1px solid red; margin: 5px; padding: 5px; } wnd|p { display: block; background-color: yellow; } </style>
8
XHTML I. zdrojový kód: blok_4/c02.xhtml
9
XHTML II. zdrojový kód: blok_4/c03.xhtml
10
PHP PHP (Hypertext Preprocessor) je skriptovací jazyk sloužící převážně k tvorbě dynamických webových stránek. Poslení produkční verze je verze 5. Komentáře <?php echo „První text.“; ?> // jednořádkový komentář (styl C++) # jednořádkový komentář (styl příkazového prostředí) /* * … víceřádkový komentář (styl C)… */
11
Základy jazyka - proměnné
nemusí se deklarovat značí se symbolem $ a pak písmeno (A-Za-z) nebo podtržítko (_) Nepřímé odkazy na proměnné Nepřímé odkazy je skriptovací Správa proměnných isset() – vrací true, pokud byla proměnná v prostředí deklarována unset() – ruší deklaraci proměnné (uvolňuje paměť) empty() – vrací true, pokud proměnná nebyla deklarována, nebo její hodnota se rovná false $jmeno = ‘Lukas’; $jmeno = ‘Lukas’; $$jmeno = ‘Cegan’; echo $Lukas; //Cegan if (isset($jmeno)) { echo $jmeno; }
12
Základy jazyka – datové typy
Superglobální proměnné $_GET[] – proměnné z url $_POST[] – proměnné z těla http zprávy $_COOKIE[] – cookie soubory od klienta $_ENV[] – proměnné proměnného prostředí $_SERVER[] – proměnné webového serveru Datové typy Celá čísla, reální čísla, řetězce, logické hodnoty, prázdné hodnoty, pole, prostředky echo $_ENV; $cislo = 10; //cele cislo $realne = 10.5; //realne cislo $retezec = “text”; //retezec $pravda = false; //logicka hodnota $hodnota = NULL; //prazdna hodnota $pole = array(1,2,3) //pole
13
Základy jazyka - operátory
Binární operátory +, -, *, /, %, . Operátory přiřazení =, +=, -=, *=, /=, %=, ^=, .=, &=, |=, <<=, >>= Operátory porovnání ==, !=, >, <, >=, <=, ===, !== Logické operátory &&, ||, xor Bitové operátory &, |, ^ Operátory negace !, ~ Inkrementační/dekrementační operátory ++, --
14
Základy jazyka – řídící struktury
Větvení (if, switch) Cykly (while, do while, for) Zahrnování kódu (include, require, eval) if (true) { echo ‘true’; } else { echo ‘false’; } switch ($hodnota) { case 1: echo ‘jedna’; break; case 2: echo ‘dva’; break; default: echo ‘nenalezeno’; break; } $i = 10; while ($i>0) { echo --$i; } for ($i=0; $i<10; $i++) { echo $i; include “muj_soubor.php”;
15
Základy jazyka – funkce
Syntaxe function název_funkce (argument1,…) { blok příkazů return; } Kontext – proměnné použité ve funkci jsou vně funkce nedostupné. Pokud chceme, aby byla proměnná dostupná i vně, je potřeba využít globální pole ($_GLOBALS[]), nebo klíčové slovo global. Návratová hodnota – návrat výsledku funkce zajistíme příkazem return, pro návrat adresy v paměti, kde je proměnná uložená je nutné při definici názvu funkce začínat znakem & (návrat odkazem). Deklarace argumentů funkce Předávané hodnotou – function($x, $y) {… Předávané odkazem – function(&$x) {… Implicitní argumenty – function($x, $y = 1) {… Statické proměnné – proměnné, jenž zůstávají v platnosti mezi jednotlivými voláními funkce. Deklarace prostřednictví static. function soucet ($x, $y) { return $x+$y; }
16
Switch, include zdrojový kód: blok_4/c04.php
17
Zpracování formuláře zdrojový kód: blok_4/c05.php
18
Debuging zdrojový kód: blok_4/c06.php
Pro debuging lze využít opensourcový debuger Xdebug (dostupný na Postup instalace a konfigurace Xdebugu v Netbeans např. na
19
Kontakt I. zdrojový kód: blok_4/include/kontakt.php
20
Kontakt II. zdrojový kód: blok_4/include/kontakt.php
CSS styly definovány v souboru: blok_4/css/basic07.css
21
Kontrolní otázky K čemu slouží XML? Jaký je rozdíl HTML a XHTML?
Co je to PHP? Jakým způsobem se deklarují v PHP proměnné? Co jsou to superglobální proměnné? K čemu slouží statické proměnné u funkcí?
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.