Kód DUM : VY_32_INOVACE_DYN.1.17 Název materiálu: Anotace Autor Jazyk Očekávaný výstup 17 PHP- komplexní úloha Výpočet obsahu trojúhelníku pomocí Heronova vzorce DUM prohloubí dovednosti žáků v postupu a analýze programové úlohy Ing. Vladimír KEBERT, CSc (Autor) Čeština RVP 18-20-M/01 Informační technologie, předmět: Publikování na Internetu, 2. ročník RVP 63-41-M/01 Ekonomika a podnikání, předmět: Publikování na Internetu, 2. ročník Speciální vzdělávací potřeby Žádné Klíčová slova LAMP WAMP XAMPP PHP server Apache Localhost Host C/S PHP.ini Httpd.conf Druh učebního materiálu Druh interaktivity Cílová skupina Stupeň a typ vzdělávání Typická věková skupina Prezentace s prvky interaktivity Kombinované Žáci 2. ročníku Odborné vzdělávání / Informační a komunikační technologie 16-19 let Celková velikost Velikost materiálu v kb : 546 (příloha: kód PHP) tématická oblast sady: Dynamický web
1. Úloha Do připravené aplikační šablony vytvořte jednoduché UI a PHP skript, který po zadání délek stran trojúhelníka a délkových jednotek vypočítá obsah trojúhelníku. - Délky stran se zadávají do jednoduchého formuláře. - Formulář bude obsahovat ošetření proti nevyplnění některé položky. - Zadané hodnoty délky stran musí projít kontrolou, zda je trojúhelník reálný, pokud ne, pak skript musí skončit. - Výsledek se bude zobrazovat na tři desetinná místa. - Výsledky není nutné ukládat do souboru nebo do databáze, postačí, aby se zobrazil výsledek ve formě odpovědi celou větou a C S = a+b+c 2 P= S (S a) ( S b) (S c) b c B A
2. Rozbor kroků procedury : Formulář vstup dat Má trojúhelník smysl? NE Jsou zadané hodnoty? NE ANO Výpočet plochy ANO Výpis výsledku Přetypování prom. Konec
3. Formulář pro zadání hodnot a jeho kontrola: - data vstupují jednoduchým formulářem - formulář se upraví v HTML např.podle vzoru:
4. Kontrola zadání hodnot do políček formuláře: - netradiční řešení vlastní funkcí (lze řešit více způsoby) - fráze ve funkci ereg testuje shodu pole formuláře s předpisem regulárního výrazu: - první řádek testuje, zda je celý formulář prázdný - pokud ano, hlásí chybu if (empty($_get)) return false; - další řádky testují jednotlivé položky. if ($_GET["Strana_a"]=="" ereg("^ +$",$_GET["Strana_a"])) return "Zadejte prosím stranu a."; - pokud je vše vyplněno, funkce vrátí TRUE a skript jde dál.
Kontrola zadání hodnot do políček formuláře: TRUE : FALSE :
5. Test smyslu trojúhelníka - pokud je splněna podmínka z předpisu if, pak skript oznámí, že hodnoty jsou reálné a provede výpočet a výpis výsledku:
Test smyslu trojúhelníka - pokud není splněna podmínka z předpisu if, pak skript oznámí, že hodnoty nejsou reálné a ukončí skript: Podmínka nesplněna, skript končí
Hotová webová stránka se skriptem (v příloze DUM):
Úkoly k přiloženému skriptu (pro domácí přípravu): - ještě jednou projděte kód přiloženého řešeného příkladu - navrhněte jiný způsob, jak zkontrolovat, zda je formulář vyplněn - navrhněte způsob, jak zaznamenávat výsledky deseti výpočtů (průchodů) zpětně a po každém průchodu zobrazit posledních 10 záznamů. K tomu můžete použít datový soubor. - upravte uživatelské rozhraní dle vašeho kreativního cítění
Přehled použité literatury a děl: Pokud není uvedeno jinak, autorem použitých textů a mediálních příloh (obrázků, textů, interaktivních materiálů, screenshotů) je autor tohoto digitálního učebního materiálu. Příklady a skripty v příloze DUM jsou dílem autora tohoto materiálu:. Použité zdroje: 1. Kolektiv(Adaptic, s.r.o).: PHP-formuláře. In: [online]. Tvorba-webu.cz, Copyright (c) 2003-2008 [cit. 2013-03-05]. Dostupné z: http://www.tvorba-webu.cz/php/formulare.php 2. KOSEK,J.: PHP - tvorba interaktivních internetových aplikací. Grada Publishing 1999, 492 stran, ISBN 80-7169-373-1 3. PHP 11. WEBTVORBA. Webtvorba: webtvorba.howto.cz [online]. Tobiáš Potoček, 2008-2009, 2009-10-02 [cit. 2013-03-29]. Dostupné z: http://webtvorba.howto.cz/php-11-pokrocilaprace-s-formulari