mam w aplikacji panel logowania wszystko ładnie działało na localhoscie ale po wgraniu na serwer nazwa dostaje error.
Kod
Nie masz dostÄpu do tej czÄĹci witryny!
Fatal error: Uncaught exception 'Zend_Acl_Role_Registry_Exception' with message 'Role 'Administrator' not found' in /home/misiu/ftp/cms/library/Zend/Acl/Role/Registry.php:132 Stack trace: #0 /home/misiu/ftp/cms/library/Zend/Acl.php(837): Zend_Acl_Role_Registry->get('Administrator') #1 /home/misiu/ftp/cms/application/plugin/Acl.php(70): Zend_Acl->isAllowed('Administrator', 'default:error', 'error') #2 /home/misiu/ftp/cms/library/Zend/Controller/Plugin/Broker.php(309): Plugin_Acl->preDispatch(Object(Zend_Controller_Request_Http)) #3 /home/misiu/ftp/cms/library/Zend/Controller/Front.php(941): Zend_Controller_Plugin_Broker->preDispatch(Object(Zend_Controller_Request_Http)) #4 /home/misiu/ftp/cms/library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch() #5 /home/misiu/ftp/cms/library/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap->run() #6 /home/misiu/ftp/cms/public/index.php(26): Zend_Application->run() #7 {main} Next exception 'Zend_Controller_Exception' with message 'Role 'Adm in /home/misiu/ftp/cms/library/Zend/Controller/Plugin/Broker.php on line 312
Fatal error: Uncaught exception 'Zend_Acl_Role_Registry_Exception' with message 'Role 'Administrator' not found' in /home/misiu/ftp/cms/library/Zend/Acl/Role/Registry.php:132 Stack trace: #0 /home/misiu/ftp/cms/library/Zend/Acl.php(837): Zend_Acl_Role_Registry->get('Administrator') #1 /home/misiu/ftp/cms/application/plugin/Acl.php(70): Zend_Acl->isAllowed('Administrator', 'default:error', 'error') #2 /home/misiu/ftp/cms/library/Zend/Controller/Plugin/Broker.php(309): Plugin_Acl->preDispatch(Object(Zend_Controller_Request_Http)) #3 /home/misiu/ftp/cms/library/Zend/Controller/Front.php(941): Zend_Controller_Plugin_Broker->preDispatch(Object(Zend_Controller_Request_Http)) #4 /home/misiu/ftp/cms/library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch() #5 /home/misiu/ftp/cms/library/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap->run() #6 /home/misiu/ftp/cms/public/index.php(26): Zend_Application->run() #7 {main} Next exception 'Zend_Controller_Exception' with message 'Role 'Adm in /home/misiu/ftp/cms/library/Zend/Controller/Plugin/Broker.php on line 312
Acl.php
<?php class Plugin_Acl extends Zend_Controller_Plugin_Abstract { public function preDispatch(Zend_Controller_Request_Abstract $request) { $acl = new Zend_Acl(); $acl->addRole('guest'); $acl->addRole('user', 'guest'); $acl->addRole('administrator'); $acl->addResource('default:index'); $acl->addResource('default:index2'); $acl->addResource('default:contact'); $acl->addResource('default:test'); $acl->addResource('default:error'); $acl->addResource('default:registration'); $acl->addResource('default:activation'); $acl->addResource('default'); $acl->addResource('content:index'); $acl->addResource('content:admin'); $acl->addResource('gallery:index'); $acl->addResource('gallery:admin'); $acl->addResource('admin:index'); $acl->addResource('admin:admin'); $acl->addResource('admin:user'); $acl->addResource('admin:registration'); $acl->addResource('admin:Articles'); $acl->addResource('admin:addarticle'); $acl->addResource('admin:deletearticle'); $acl->addResource('admin:editarticle'); $acl->addResource('admin:map'); $acl->addResource('admin:foto'); $acl->addResource('admin:upload'); $acl->addResource('admin'); $acl->allow('guest', 'admin:Articles'); $acl->allow('guest', 'default'); $acl->allow('guest', 'default:index'); $acl->allow('guest', 'default:index2'); $acl->allow('guest', 'default:error'); $acl->allow('guest', 'default:registration'); $acl->allow('guest', 'default:activation'); $acl->allow('guest', 'default:test'); //$acl->allow('guest', 'admin'); $acl->allow('guest', 'admin:registration'); $acl->allow('guest', 'admin:index', 'index'); $acl->allow('guest', 'admin:index', 'login'); $acl->allow('guest', 'default:index', 'register'); $acl->allow('guest', 'default:error'); $acl->allow('administrator'); // /* Użytkownik */ $user = Zend_Auth::getInstance()->getIdentity(); if (null === $user) { $role = 'guest'; } else { $role = $user->role; } /* Czy użytkownik ma prawo dostępu? */ if (!$acl->isAllowed($role, $request->getModuleName('admin') . ':' . $request->getControllerName('user'), $request->getActionName('login'))) { } $auth = Zend_Auth::getInstance(); if($auth->hasIdentity()) { $identity = $auth->getIdentity(); }else{ $role = 'guest'; } $module = $request->module; $controller = $request->controller; $action = $request->action; if (!$acl->isAllowed($role, $module, $controller, $action)) { if ($role == 'guest') { $request->setModuleName('admin'); $request->setControllerName('user'); $request->setActionName('login'); } else { $request->setModuleName('admin'); $request->setControllerName('error'); $request->setActionName('noauth'); } } } } ?>
Login action Logput
public function loginAction() { // action body $userForm = new Admin_Form_User(); $usersDAO = new Default_Model_Users(); $userForm->setAction('/login'); $userForm->removeElement('first_name'); $userForm->removeElement('last_name'); $userForm->removeElement('role'); if ($this->_request->isPost() && $userForm->isValid($_POST)) { $data = $userForm->getValues(); //set up the auth adapter // get the default db adapter $db = Zend_Db_Table::getDefaultAdapter(); //create the auth adapter $authAdapter = new Zend_Auth_Adapter_DbTable($db, 'users', 'username', 'password'); //set the username and password $authAdapter->setIdentity($data['username']); //authenticate $result = $authAdapter->authenticate(); if ($result->isValid()) { // store the username, first and last names of the user $auth = Zend_Auth::getInstance(); $storage = $auth->getStorage(); $storage->write($authAdapter->getResultRowObject( $user = $usersDAO->fetchRowByUser($data['username']); // Is accout active if(@$user->active){ return $this->_forward('index'); } else { //print $user->active; Zend_Auth::getInstance()->clearIdentity(); } } else { $this->view->loginMessage = "Sorry, your username or password was incorrect"; } } $this->view->form = $userForm; } public function logoutAction() { // action body $authAdapter = Zend_Auth::getInstance(); $authAdapter->clearIdentity(); }