http://www.nabble.com/Zend_Acl---Zend_Auth...5728s16154.html
ale ja oporny jestem trochę i nie wiem jak się do tego zabrać
chodzi mi o sytuację taką jak na forum, w jakiś panelu administracyjnym itp itd
jak ja to robiłem to w bazie była tabela user z jego id, loginem, hasłem oraz listą uprawnień w systemie w stylu dodawanie,edycja,usuwanie,admin itp itd
przy logowaniu ładowało się to do zmiennych sesji i sprawdzało np
<?php if(!$_SESSION['user']['edycja']) /// przejdź do strony z komunikatem, że nie znalezniono strony lub brak uprawnień l
ub co tam kto chciał ?>
czytałem o ACL - głupie to nie jest - ale jakoś nie umiem, nie wiem jak to wykorzystać w normalnej aplikacji
chodzi mi o to, aby ktoś wytłumaczył mi jak to się robi w ZF
w przykładzie z linku od cyphelfa jest to zrobione pod jakiś system katalogów - a ja mam system katalogów taki zwyczajny z tutoriala ściągnięty - mam w katalogu controllers jakieś kontrolery a w nich jakieś akcje
przykładowo
<?php function addrecordAction() { //dodawanie rekordu do bazy } ?>
czy wobec tego sprawdzać to w funkcji?
w przykładzie tym od cyphelfa jest wykorzystany plugin
czy to się robi wobec tego tak
<?php public function preDispatch($request) { $dispatcher = Zend_Controller_Front::getInstance()->getDispatcher(); $appPath=Zend::registry('appPath'); $akcja=$request->getRequestUri() switch ($akcja) { case 'news/addrecord': case 'user/addrecord': //sprawdź czy może dodawać - zwróć true albo false break; case 'news/editrecord': case 'user/editrecord': //sprawdź czy może edytować - zwróć true albo false break; } if(false) { $request->setControllerName('error')//może być tam z jakiś parametrem ->setActionName($dispatcher->getDefaultAction()) ->setDispatched(); } } ?>
jak na razie to mam ochotę zrobić to po staremu, ale może jest jakiś sposób który zarządzanie uprawnień czyni rzeczą prostą i przyjemną i łatwą