Ahoj, natočili jsme pro vás předvánoční screencast o Zend_Auth, uvidíte jak vyřešit přihlašování uživatelů a následnou kontrolu, zda mají přístup do některých částí aplikace.
Zend Framework – Zend_Auth (Czech) from Martin Hujer on Vimeo.
Přihlašování a odhlašování pomocí Zend_Auth, kontrola controller pluginem
(přepněte si na fullscreen)
Stáhněte si zdrojáky k aplikaci
EDIT: Omlouváme se za chybičku v aplikaci, samozřejmě v Controller_Plugin_Auth má být $controller == ‚index‘ místo $controller = ‚index‘. (V přiložených zdrojácích opraveno.)
Ahoj,
hosi super, jen tak dal, jsem moc rad, ze se nekdo z te nase male krajiny rozhodl pro nejake screencasty o ZF a doufam, ze vam to i vydrzi a dockame se dalsich zajimavych screencastu.
Zatim je to taka slaba odnoz http://www.zendcasts.com/ ale to vubec nevadi a moc vam fandim.
Nevim ci uz mate nejake dalsi namety co dal atd., ale ja bych byl moooc vdecny, kdybyze vymyslite nejake screencasty ohledne domain modelu, tedy jak resit pristup k DB pomoci Zend_Db s napojenim na Zend_Form, neco jak bylo publikovano na http://www.zendcasts.com/tag/zend_db/ , tedy jak spravne programove navrhnout domain model a co je asi nejozehavesi cast jsou vztahy 1:N a M:N + napojeni na Zend_Form.
Nekdo ma rad a uprednostuje DataMapper, nekdo ActiveRecord a nekdo jen Service Layers nad Zend_Db, fakt by mne mooc zajimalo, jak k teto problematice pristupujete vy ;)
Tymto bych vas chtel i pozadat o vytvoreni serialu (rady screencastu zamerenych na tuto problematiku)
Toto je asi pro kazdeho kdo pouziva ZF asi ta nejdulezitejsi!! a nejzadanejsi problematika a bylo by hodne zajimave videt, jak k tomuto problemu pristupujete vy (kazdy ma jiny nazor a je tu hodne rozporu, ale kazdy ma neco do sebe ;) ) a screencastu s touto problematikou neni nidky dost.
Podpora ZF a Doctrine je jina cast a podle mne je zatim na ZF + Doctrine cas, nejmene dovtedy, dokup nebude Doctrine v ZF plne podporovano.
A dalsi vec co se mo hodne libi je, ze vase casty maji nejakou tu autentitu, tedy je videt kdo to dela a vkladate do toho sve tvare, … coz sa malokdy (vecsinou v zahranici) vidi, vecsinou je to jen screen s Eclipse a hlas a nic vic, ale vy to toho vklade i kus sebe a tym padem casty jsou blize lidem ;)
Takze hodne zdaru, hlavne nech to vydrzi a moc vam preji pekne a vesele vanoci svatky a stastny novy rok ;)
Moc vam dekuji za vybory (cesky !!) cast, ahoj
DIKY!
zvlaste za tu pasaz s prskavkami
jen tak dal
Hrůůů,
hoši, fakt vostrý .)))
Jen bych opravil, je tam chybka
$controller = ‚index‘
má být nejspíš
$controller == ‚index‘
Jsme rádi, že se líbí
kevujin: jéé, taková blbá chyba, díky, opraveno.
Fajn príklad
Ešte by som do formu doplnil ochranu proti utoku CSRF (Cross-Site Request Forgery) cize Hash element, dalej osolit heslo a je to bezpecne a pouzitelne.
Tesim sa na dalsi screencast
JJ. Měli sme v plánu to ukázat přímo ve screencastu, ale už takhle to je na 30min, takže sme si řikali, že tyhle věci dáme až jestli budem dělat nějaký screencast o bezpečnostních best-practices.
kevujin: Jej, blbá chyba :X Já už se snažím to psát zendím způsobem – opačně (např.: null == $var), což vyhodí chybu, když člověk zapomene ;) Ale občas to ještě ulítne… :)
taky mi blblo kodovani tak to resim takhle:
do .htaccess projektu pridat
AddDefaultCharset UTF-8
Taky moc díky hoši, děláte opravdu povedená videa a jsem za ně moc rád!
Tak to kódování by se dalo nastavit tak, že by se initnul layout nebo view v Bootstrapu a do něj se to nastavilo. Jenže sme to nechtěli zanášet do toho screencastu, protože by to byl nepotřebný balast, který většinu lidí nezajímá, protože mají hotovou aplikaci a chtějí do ní jen přidat přihlašování.
Takhle každý vidí, že nám to taky nejede. Jinak by to bylo „Fajn screencast, ale nedaří se mi zprovoznit kodování“ :)
Add kódováni: layout není třeba inicializovat, úplně postačí v application.ini řádek:
resources.view.encoding = „UTF-8“
Díky za upřesnění. Rozhodně to zahrneme jako upozornění v příštim screencastu :)
V Zend_Application si musím ještě tyhle featury dostudovat – především co všechno stačí dopsat do app.ini ;) Ve svých aplikacích mám zatím vlastní bootstrap „špageťák“ ala ZF1.5 protože nebyl čas to přepsat a otestovat a v Application dělám jen na screencasty nebo věci co generuji přes Zend_Tool.
Jaké bootstrapy používáte vy? Špageťáky, vlastní třídy nebo 1.8kový Zendí?
Díky za videa, fandím vám a doufám že tyto nebudou na dlouhou dobu poslední, díky moc.
Radek: Jsme rádi, že se líbí :) Poslední nejsou, jen skončí zkouškové a budou další…
Jeste jedna poznamka/prosba.
Jak pridat hlasku, kam, "
nebo pokud je prihlasen a je na „tajne strance“ tak nic
jinak receno..jak predat hlasku z plugin/Auth.php
FlashMessenger ?
Nějak takhle…
Ovšem lepší by bylo přesměrovat na přihlašovací stránku, kde by bylo napsáno, že pro zobrazení obsahu musí být přihlášen.
Hlášky že byl přihlášen/odhlášen bych přidával z controlleru.
diky za snahu, ale nejak jsem to uplne nepochopil..
> „Hlášky že byl přihlášen/odhlášen bych přidával z controlleru.“
myslis predavat v GETu?
neco jako..
$this->_redirect ( ‚/vnitrek/index/hlaska/praveprihlasen‘ );
kdyz jsem si zkusil ulozit hlasku do view..neco jako
$this->view->hlaska = ‚OK PRIHLASENI‘;
se po redictu vymazala..
no zacinam no
DIKY
hlášky, že byl přihlášen/odhlášen bych přidával do FlashMessengeru z controlleru.
Objekt $this->view se přesměrováním zruší, FlashMessnger si data ukládá do session.
Dekuji pekne..to je ono.