![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 897 Pomógł: 40 Dołączył: 16.12.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Witam,
kombinuję dzisiaj z Zend_Auth i coś mi nie idzie... Chciałbym, żeby oprócz standardowego sprawdzania nazwy i hasła w bazie spełniony był również warunek 'active = TRUE'. Mam kod z manuala, ale nie działa, logują się nieaktywowani użytkownicy... Niżej mój kod. Wszystko jest ok, tylko zupełnie ignorowany jest warunek... Będę wdzięczny za pomoc.
-------------------- how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 85 Pomógł: 3 Dołączył: 28.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Pozwole sobie jeszcze poprosic o pomoc... ustawilem sobie juz wszystko (Zend_Registry, reguly do Zend_Acl, sesje), napisalem plugin (kod macie ponizej). Problem polega na tym, ze wszystkie parametry zmiennej $request (konkretnie te, ktore mnie interesuja: module, controller i action) maja wartosc NULL. Niezaleznie od tego, czy uzyje zmiennej z linijki 16 czy z 17... wlasciwie juz wszystko by mi mialo dzialac, poza tym zakichanym $request...
Dodam, ze var_dump($request) wykonany w ktorymkolwiek kontrollerze zwraca poprawny wynik... Obiekt typu Jpg_Acl tworzony jest w pliku Initializer.php, wtedy tez przekazywany jest do niego $request, wiec moze wtedy nie ma tam przypisanych jeszcze modułu, kontrollera i akcji... Jak w takim razie to rozwiazac? Bo troche mi sie pomysly skonczyly, a jestem juz dosc blisko celu ![]() Kod <?php
class Jpg_Acl extends Zend_Controller_Plugin_Abstract{ protected $_acl; protected $_role; public function __construct($request,$acl,$rola='guest'){ $this->_acl = $acl; $this->_role = $rola; $this->check($request); } public function check(Zend_Controller_Request_Abstract $request){ var_dump($this->getRequest()); //var_dump($request); zwraca taki sam wynik jak wyzej.... $resourceName = $this->_request->getModuleName(); if (!$this->_acl->isAllowed($this->_role, $resourceName, $request->getActionName())) { //$this->denyAccess($request); } } private function denyAccess(Zend_Controller_Request_Abstract $request){ echo '<script language="javascript">location.replace("'.$request->getBaseUrl().'");</script>'; } } ?> Ten post edytował gazelek 22.05.2009, 22:31:36 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 27.06.2025 - 04:56 |