Tanítás, webfejlesztés, programozás, informatika, rock zene

Az űrlapok használata során beleütköztem abba a problémába, hogyan lehet tetszőleges HTML tartalmat vagy szöveget kiíratni az űrlapba egy űrlapelemhez kapcsolódóan.

Sok olvasás után arra jöttem rá, hogy Decorator lesz a kulcsszó!

Mik is a Decoratorok?

Olyan osztályok, amelyek felelősek a tartalom kiíratásért.

A Zend Session kezelése a PHP session kezelésén alapul és a cookie-k és az URL-ekben küldött azonosítókat használja, ugyanúgy, mint a PHP. Ugyanazokat a standard eszközöket használja a session azonosításra is.

Session névterek

Beszéljünk a névterekről. Amikor a $_SESSION['valami']  kifejezést használjuk, akkor a "valami" egy névtér és ebben a névtérben található a belépések száma érték, ha ezt így tároljuk: $_SESSION['valami']['belepesek_szama']. Hogyan van ez a Zend esetében?

A Zend Framework alkalmazásokban a konfigurációs állományokat a konfigurációját három módon célszerű használni:

Az alábbi lesz az eddig végigtárgyalt application/controllers/UserController.php tartalma és néhány magyarázat a végén.

Az adatbázisok kezelése során zudni kell, hogy minden PDO driverrel ellátott adatbázist képes kezelni. Két osztály a Zend_Db és a Zend_Adapter osztály tartozik alapvetően ebbe a körbe. A Zend Framework a PHP PDO driverein keresztül képes kezelni az alábbi adatbáziskezelőket:

A Zend Framework a GWT paramétereket is átveszi az URL-ben az alábbi módon:

http://hostname/user/name/username/wiwit/gender/man

Az alábbira fordítja le:

    Controller = user
    Action = name
    username = wiwit
    gender = man

Mi a megoldást? A nameAction() függvényt egy kicsit módosítjuk. Az általános forma így néz ki:

a webalkalmazásoknál fontosak az URL-ek. A Zend Framework esetén az URL az alábbi módon néz ki:

http://hostname/controller/action/parameters

Ha készíteni akarunk egy UserControllert, akkor készítenünk kell az application/controllers/UserController.php nevű fájlt, amiben van a UserController nevű osztály és annak az indexAction() függvénye.

application/views/scripts

A következő lépésben a FrontControllert hozzuk létre, amely minden kérést elkap és vetérli a hozzá tartozó eseményeket. A fájlok elnevezése és helye nagyon fontos, továbbá a benne taláható osztályok nevei is fontosak. Az útvonalak alapján az application/controllers könyvtárban kell létrehozni az IndexController.php fájlt.

Ebben a fájlban fogja keresni a {Controllernév}Controller osztályon belül az keresi az {actionname}Action() nevű függvényt.

Jelen esetben tehát:

A web_root könyvtárba helezzük el az alábbi index.php fájlt!

<?php
error_reporting(E_ALL|E_STRICT);
ini_set('display_errors', true);
date_default_timezone_set('Europe/London');

$rootDir = dirname(dirname(__FIle__));
set_include_path($rootDir . '/library' . PATH_SEPARATOR . get_include_path());

require_once 'Zend/Controller/Front.php';
Zend_Controller_Front::run('../application/controllers');
?>

Ez az úgynevezett bootstrap fájl vagy más néven behúzó fájl.

A ZF használatához először töltsük le a legutolsó library-t.

A Zend Framework esetén fontos a könyvtárstruktúra és a könyvtárak elnevezései, mert ennek alapján találja meg a keretrendszer a megadott osztályokat. A Zend az alábbi könyvtárstruktúrát javasolja:

projektnev

  • application - Itt van a Zend alkalmazás View, Model és Controller része. A webről nem elérhető módon!
    • controllers

application.ini - a Zend alkalmazás beállításainak helye