Ing. Jan Mittner
Ing. Jan Mittner KH v případě zájmu vždy po cvičení
1. Eclipse PDT 2. Připojení ke školnímu serveru 3. Práce na projektech 4. Vývojové prostředí 5. Základy Zend Framework 3
dostupnost Eclipse PDT školní PC – Application Explorer > Programování > Java > Eclipse PDT stažení aplikace z připojení k serveru a nastavení IDE nastavit si viditelnost skrytých souborů ▪ menu Preferences > Remote Systems > Files > zaškrnout Show hidden files přepnout si na perspektivu Remote Systems Explorer v levém horním okně přidat nové připojení ▪ pravým tlačítkem kliknout do okna > New Connection > FTP Only atd. před připojením nastavit UTF-8 kódování ▪ pravým tlačítkem kliknout na vytvořené připojení > Properties > Host > a Default Encoding zvolit na Other a vybrat UTF-8 4
po připojení je na FTP složka shared jedná se o odkaz na centrální složku obsahující ukázky aplikací, se kterými budeme na cvičeních pracovat máte přístup pouze pro čtení pozor, ať složku omylem nesmažete! pro každé cvičení vám bude zkopírován příslušný projekt teprve s těmito soubory pak na serveru můžete pracovat, v rámci složky shared nemůžete nic ukládat! je nutné mít aktivovanou viditelnost skrytých souborů, aby se vám zkopírovaly i soubory.htaccess! 5
na svém domácím PC, resp. na notebooku si zprovozněte kompletní vývojové prostředí Apache 2+, PHP 5+, MySQL 4+, aktivovaný mod_rewrite nejsnazší je využít balíček XAMPP a aktivovat v něm mod_rewrite Eclipse PDT 6
obecné základy PHP frameworků a Zend Framework viz. starší 4. přednáška PHP_frameworky.pptx PHP_frameworky.pptx Zend Framework - hlavní stránka - referenční příručka Hello World viz. adresář /shared/01-hello-world aplikace se spouští v rámci podadresáře www 7
Cíle PHP frameworků usnadnit a zkvalitnit vývoj aplikací zautomatizovat a standardizovat základní funkce při vývoji PHP aplikací 8
Zend Framework – základní funkce vše potřebné rozsáhlá implementace MVC modelu abstraktní databázové rozhraní automatizace zpracování formulářů podpora Javascriptových frameworků a AJAXu lokalizace řízení přístupu a bezpečnosti cachování fulltextové vyhledávání 9
MVC model návrhový vzor pro oddělení datové, logické a prezentační vrstvy aplikace 3 základní elementy: Controller – reaguje na požadavky uživatele s využitím elementů Model a View Model – realizuje práci s daty View – transformuje data elementu Model do podoby vhodné pro interakci 10
Zend Framework – MVC model základní elementy: Router – tvorba objektu požadavku na základě příchozí URL, možnost přepisu URL Dispatcher – výběr vhodného Controlleru a jeho akce na základě objektu požadavku Controller, Model, View – viz. předešlý slide 11
Zend Framework – struktura aplikací application – soubor elementů controller, model a view atd. library – aplikační knihovny jako Zend Framework apod. tests – soubor všech jednotkových testů web_root – root webu se spouštěcím souborem aplikace a soubory, které musí být dostupné přímo z webu jako obrázky, CSS apod. kvůli bezpečnosti 12
IndexController v adresáři /application/controllers úvodní controller každého projektu, jeho metoda indexAction() se spouští, pokud otevřeme v prohlížeči pouze základ URL projektu název metody akce controlleru musí mít suffix Action view v rámci controlleru máme k dispozici interní proměnnou $this->view, která obsahuje instanci objektu Zend_View sloužící pro práci se šablonami ▪ instance objektu je automaticky namapována na příslušející šablony k dané akci controlleru ▪ pomocí metody assign() objektu je možné do view vkládat data použitelná v šablonách coby interní atributy šablony jsou dostupné v adresáři /application/views/scripts ▪ každý controller zde může mít stejnojmenný vlastní adresář, v rámci něhož jsou k dispozici šablony ke konkrétním akcím controlleru ▪ např. indexAction controlleru IndexController zde má tedy šablonu index.phtml v rámci adresáře index 13
layout standardní view zpravidla řeší pouze hlavní obsah stránky rozvržení celé stránky (hlavička, patička, menu, postranní sloupce atd. ) by měl mít na starosti layout šablony layoutů jsou k dispozici v adresáři /layouts/scripts ▪ implicitní šablona layoutu je layout.phtml systém URL Zend Framework má vlastní systém URL, dle kterého zjišťuje, co chce klient spustit: ▪ [základ_url]/[controller]/[akce]/[parametr1]/[hodnota1] /[parametr2]/[hodnota2] URL tedy spouští: ▪ - základ URL ▪ product – controller ProductController ▪ preview – akce controlleru previewAction ▪ id/2 - parametr ID s hodnotou 2 14
1. přidejte obsah do úvodní stránky 2. doplňte do layoutu hlavičku a patičku 3. přidejte novou stránku o nás v rámci controlleru index 4. doplňte do nové stránky proměnnou s textem z controlleru 15