Programování v PHP
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
BI-PHP | KZ | 4 | 0+3 | česky |
- Přednášející:
- Pavel Štěpán (gar.)
- Cvičící:
- Pavel Štěpán (gar.), Helena Wallenfelsová
- Předmět zajišťuje:
- katedra softwarového inženýrství
- Anotace:
-
Student se seznámí s principy dynamické tvorby webových stránek na straně servera. Naučí se programovací jazyk PHP. V této části jsou vyloženy základní konstrukce jazyka - typy a definice proměnných, operátory, pole, cykly, definice a volání funkcí. Současně se vykládá, jak se vloží PHP skript do HTML kódu vytvářené stránky. Posluchač se dozví i základní informace o práci se stringy a regulárními výrazy. Další částí je implementace objektového programování v PHP - definice a instancování tříd, konstruktory, metody, vlastnosti, statické členy, destruktory. Dále se posluchači seznámí s dědičností a polymorfizmem v PHP. Naučí se též pracovat s databázemi v prostředí PHP a vyzkouší praktické použití databází MySQL nebo SQLite. Budou vyloženy i vybrané části knihoven PHP.
Upozornění: tento předmět slouží jako základní pro jazyk PHP. Těm studentům, kteří již mají s PHP zkušenosti, doporučujeme přihlásit se na předmět Web a multimedia (BI-WT1 ?))
- Požadavky:
-
Předpokládá se schopnost algoritmizace a alespoň základní praxe s programováním. Vhodná (i když ne nezbytná) je i určitá znalost HTML. Samozřejmě se předpokláda i schopnost zacházet s počítačem alespoň na uživatelské úrovni a uživatelská práce s webem. Výhodou (i když nikoli nezbytným předpokladem) je znalost principů objektového programování. Též vhodné (nikoli nezbytné) je mít alespoň základní zkušenost s prací s databázemi.
Podrobné požadavky jsou uvedeny na stránce:
- Osnova přednášek:
-
1. Úvod: struktura současného Webu, stručná rekapitulace HTTP, HTML a CSS, co je dynamická tvorba webovských stránek pomocí serverových skriptů, příklad jednoduché PHP stránky, informace k instalaci PHP
2. Základy jazyka PHP: vložení PHP skriptu do HTML kódu, datové typy (integer, floating point, řetězce), proměnné, výrazy, konstanty, operátory, řídící struktury (if, for, switch...)
3. Pokročilé rysy PHP: pole, základní informace o knihovních funkcích, tvorba uživatelsky definovaných funkcí, jejich používání
4. Tvorba web formulářů: zadávání dat na straně klienta (tagy input, select, form, ...), přístup k zadaným datům v kódu PHP, dynamické vytváření stránky na základě přijatých parametrů, praktické příklady
5. Stav aplikace: pojem stavu a web, session, práce se session, session proměnné; základní informace o konfiguraci session a vlastních session providerech
6. Objektové programování: základní informace, encapsulation, methods, properties, definice tříd, vytváření instancí (objektů), destruktory, statické vlastnosti a metody
7. Odvozování objektů: inheritance (dědičnost), definice a používání interface, abstraktní třídy a metody, polymorfismus
8. Zpracování chyb: konfigurace, výjimky, třída Exception, struktura try - catch
9. Práce s řetězci: vybrané stringové funkce; regulární výrazy - seznámení, implementace regulárních výrazů v PHP
10. Práce s datumem a časem: vybrané knihovní funkce pro práci s datumem a časem, třída Date, validace, lokalizace
11. Práce s databázemi: základní informace o databázích, rekapitulace SQL příkazů Select, Insert, Update a Delete. Práce s databází v PHP. Možné prostředky. Vrstva PDO. Použití konkrétní databáze MySQL nebo SQLite. Vytvoření webové stránky nad daty z databáze. Vkládání a upravy dat v databázi pomocí web formuláře.
12. Bezpečnost a PHP - základ: možná nebezpečí, testování parametrů, funkce pro ověřování, autentizace
13. Technologie AJAX ? stručný přehled: základ AJAXu ? objekt XMLHttpRequest + skriptování na straně klienta, příklad jednoduché stránky s JavaScriptem, používající AJAX, „protistrana“ - odpovídající serverová aplikace (v PHP), použití technologie AJAX při tvorbě web aplikací
- Osnova cvičení:
- Cíle studia:
- Studijní materiály:
-
Hlavní studijní materiál představují aplikace, vytvářené v průběhu semestru. Je však možné použít i následující literaturu (i když jde o poněkud příliš rozsáhlé publikace):
BAKKEN, S., GUTMANS, A., RETHANS, D. „Mistrovství v PHP 5“. Nakladatelství Computer Press, 2007. ISBN: 978-80-251-1519-0
BORONCZYK, T., GERNER, J., NARAMORE, E. „PHP 6, MySQL, Apache. Vytváříme webové aplikace“. Nakladatelství Computer Press, 2009. ISBN: 978-80-251-2767-4
- Poznámka:
-
Rozsah=prednasky+proseminare+cviceni: 0p+3c, Prednasejici: Ing. Pavel Štěpán
- Rozvrh na zimní semestr 2011/2012:
-
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Po Út St Čt Pá - Rozvrh na letní semestr 2011/2012:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů: