Kategória: Zend Framework

Zend Framework Céges Demo Portál források letöltése

Kedves olvasók,

A Zend Framework-ös bejegyzések a NewSoft Team weboldaláról visszakerültek kiinduló helyükre azaz ide, ezzel együtt a Zend Framework-ös Céges Demo Portál forráskódjai már nem letölthetőek, sem a blogról sem a korábbi helyükről. A forráskód a bejegyezések végigolvasásával kiszedhető, ezzel a módszerrel sokkal hatékonyabban tudja valaki elsajátítani a keretrendszer megismerését.

PHP – változó aktuális értékének kiíratása – print_r(), var_dump(), Zend_Debug::dump()

Alkalmazás, weboldal készítése során, hibajavítás esetén sokszor szükségünk lehet, változóink aktuális értékére. PHP-ben én erre ezeket szoktam használni: print_r(), amely remekül kiírja egy tömb összes elemét, szükségünk lehet a var_dump() parancsra, amely kb. ugyanazt tudja mint a print_r() a különbség annyi, hogy itt a PHP azt is kiírja milyen típusú adattal dolgozunk és ez milyen hosszú. A var_dump Zend Framework-os megfelelője a Zend_Debug objektum dump() tagfüggvénye. Meghívása a következőképpen lehetséges Zend_Debug::dump($variable); .

 

sitemap.xml készítése Zend_Navigation objektummal

Ha egy egyszerűbb nem teljesen dinamikus weboldalunk van amit Zend Framework alapokon fut és az oldal navigációját, nem egy navigation.xml fájlból vagy adatbázisból építjük fel, ebben az esetben is szükségünk lehet, a sitemap-re. A sitemap meglétét a keresők is pozitívan értékelik egy weboldal esetében, még jobb ha ez a sitemap, az aktuális oldaltérképet tartalmazza. Ha vannak olyan speciális oldalaink amit úgy generálunk,  azaz tartalma megszűnhet változhat, az oldal maga megszűnhet vagy létrejöhet akkor ennek a sitemap.xml-nek is változnia kell!

Mit kell ehhez tennünk?

Készítsük el a

SitemapControllert extends Zend_Controller_Action {
public function init() {
}


public function indexAction(){
}
}

és a hozzátartozó nézetet views/scripts/sitemap/index.phtml fájlt.

init() függvényünk tartalma legyen:

$this->_helper->contextSwitch()
->addContext('txt', array('suffix'=>'txt', 'headers'=>array('Content-Type'=>'text/plain')))
->addActionContext('robots','txt')
->addActionContext('sitemap','xml')
->initContext();

Ezzel beállítjuk kontextust, hogy szöveges tartalmat még pedig XML-t generálunk.

indexAction(){} eseményünk tartalma mégpedig legyen az alábbi:

$pages = array(
array(
'label' => 'Home',
'uri' => '/',
));

“sitemap.xml készítése Zend_Navigation objektummal” Tovább olvasása

Céges Demo portálban Zend Framework verzió frissítése 1.7-ről 1.11-re és velejárói

Úgy gondoltuk elérkezett az ideje egy kis frissítésnek. Sokan panaszkodtak, hogy némi átalakítás hiba javítás után tudják csak a Céges Demo portált életre kelteni. Ennek oka az volt, hogy míg az első pár részben a keretrendszer 1.5-verziójával dolgoztunk majd egy kis idő múlva áttértünk az 1.7-es változatra mostanság az 1.11-változat érhető el mindenki számára. Sajnálatos módon sokan nem olvasták el a láblécet, vagy el sem jutottak addig, hogy megjelenjen számukra az információ, hogy a korábban közzétett kódok és letölthető forráskódokhoz a keretrendszer mely változata szükséges. “Céges Demo portálban Zend Framework verzió frissítése 1.7-ről 1.11-re és velejárói” Tovább olvasása

Zend Framework – Céges Demo portál – Letöltés csak bejelentkezés esetén XVI. rész

Korábban elkészültünk a regisztrációval, megvalósítottuk a felhasználók bejelentkeztetését(azonosítását). Azonban felhasználóink, látogatóink nem fognak a semmiért beregisztrálni és bejelentkezni, valami pluszt kell nyújtanunk számukra. Legyen ez a letöltés, sok cégnek van ugyan oldala, de demo változatok letöltésnél azért szeretné tudni mégis kicsoda töltött le a programot dokumentációt, űrlapot vagy bármiféle fontos iratot. Annak megakadályozására, hogy bárki bejelentkezés nélkül letudjon tölteni valamit az oldalról, van egy nagyon egyszerű megoldása Zend Framework használata esetén. Korábban létrehoztunk egy új névteret a session azonosító mellett, ezt felhasználhatjuk a probléma megoldására. Hozzunk létre egy LetoltesController.php -t, aminek legyen egy az IndexController indexAction() eseményével megegyező kódú letoltesAction() eseménye. Minden a controllerben elhelyezkedő eseménynek van egy init() metódusa Zendben amit mi felül is definiálhatunk a következőképpen: “Zend Framework – Céges Demo portál – Letöltés csak bejelentkezés esetén XVI. rész” Tovább olvasása

Zend Framework – Céges Demo portál – Kijelentkeztetés XV. rész

Most, hogy megvan a bejelentkezés, egy kicsit módosítani kell pár helyen a kódban. Például jó lenne tudnia a nézetnek, hogy regisztrált és bejelentkezett felhasználó látja a portál képét.

Ha be van jelentkezve, akkor kellene egy kijelentkezés felirat is, ha be van jelentkezve, akkor minek jelenjen meg a regisztráció, bejelentkezés felirat?

Ha be van jelentkezve lásson csak Kijelentkezés feliratot a felhasználónk, ha nincs bejelentkezve, akkor tudjon regisztrálni és/vagy bejelentkezni.

Ennek megoldására a nézetnek is tudnia kell, hogy felhasználónk be van e már jelentkezve át kell adni neki az adatokat. Ezt a korábban létrehozott BaseControllerünkben érdemes megoldani, mivel minden Controllert ebből örököltettünk, így minden egyes esemény lefutásakor meghívódik azaz nem is a controller hanem a controller init metódusa. A BaseController-ünk init() metódusában létre kell hoznunk azaz le kell kérni a szervertől a klienshez tartozó sessionazonosító ‘felhasznalo’ névteréhez tartozó adatokat, amit a nézetnek át is kell adni ha létezik! “Zend Framework – Céges Demo portál – Kijelentkeztetés XV. rész” Tovább olvasása

Zend Framework – Céges Demo portál – Bejelentkezés – Zend Authentikáció használatával XIV. rész

Az előző cikkben elkészült a bejelentkezési űrlap, most megmutatjuk, hogyan célszerű megvalósítani a bejelentkeztetést. Ehhez a korábban létrehozott IndexController() processRegisztracioAction() eseményét ahogy van másoljuk le s nevezzük át processBejelentkezesAction()-re. Tulajdonképpen majdnem ugyanaz marad a forrása is, de az email validáció ellenőrzés után, mi most nem mentjük az adatokat az adatbázisban, hanem végrehajtjuk a felhasználó azonosítását.

Felhasználók bejelentkeztetésére, a Zend Frameworknek van egy speciális megoldása Zend_Auth_Adapter, meg kell adni, mely adatbázis mező alapján ellenőrizze a felhasználónevet/emailcímet éppen amivel dolgozunk, melyik adatbázis mező alapján ellenőrizze a jelszavat. “Zend Framework – Céges Demo portál – Bejelentkezés – Zend Authentikáció használatával XIV. rész” Tovább olvasása