isAuthorized cake 2.6

Par romses, il y a 11 ans


salut à tous je veux restraint l'acces a mes ressources dans mon appli. ayant suivit la cookbook 2.x, j'ai fait la rencontre de la fonction isauthorize.
dans mon appcontroller j'ai ceci:

<?php App::uses('Controller', 'Controller'); class AppController extends Controller { public $helpers = array('Html','Form','Session'); public $components = array( 'Session', 'Auth' =>array( 'authenticate' => array( 'Form' => array( 'userModel' => 'Personnel', 'fields' => array( 'username' => 'pseudo', // 'username' par défaut 'password' => 'motdepasse' ), // 'password' par défaut 'userFields' => array('id','pseudo','enseignements_id','fonctionpersonnels_id','Fonctionpersonnel.poste','enseigne','avatar'), 'passwordHasher' => array( 'className' => 'Simple', 'hashType' => 'sha256' ) ) ), 'authorize' => array('Controller'), 'loginAction' => array('controller' => 'Personnels', 'action' => 'login'), 'loginRedirect' => array('controller' => 'Personnels','action' => 'index'), 'logoutRedirect' => array('controller' => 'Administrators','action' => 'index') ) ); public function isAuthorized($user = null) { return true; } public function beforeFilter() { parent::beforeFilter(); } } et dans mon controlleur de connexion appelé Personnel, j'ai ceci: public function isAuthorized($user = null) { parent::isAuthorized($user); return $user['Fonctionpersonnel.poste'] == 'Enseignant'; } public function beforeFilter() { parent::beforeFilter(); } public function login() { $this->layout = 'connexion'; if($this->request->is('post') && !empty($this->request->data)) { if($this->Auth->login()) { $fonction = strtolower($this->Auth->user('Fonctionpersonnel.poste')); $this->Session->setFlash('Bienvenue dans votre compte Enseignant, Vous êtes connecter','default', array('class'=>'alert alert-success')); return $this->redirect(array('controller' => 'Membres','action' => 'enseignant_index','full_base' => true)); } else { $this->Session->setFlash('Nom d\'utilisateur ou mot de passe invalide, réessayer','default', array('class'=>'alert alert-danger')); } } } public function logout() { $this->Session->destroy(); $this->Session->setFlash('Vous êtes déconnecter','default', array('class'=>'alert alert-info')); return $this->redirect($this->Auth->logout()); } lorsque j'ésais de me connecté, j'ai une redirection vers la racine de mon application: soit http://localhost/Gestionetablissement/Gestionetablissement/Personnels et ducoup une l'erreur suivante: Bienvenue dans votre compte Enseignant, Vous êtes connecter Missing Controller Error: GestionetablissementController could not be found. Error: Create the class GestionetablissementController below in file: app\Controller\GestionetablissementController.php <?php class GestionetablissementController extends AppController { } j'aimerais savoir si j'ai loupé quelque chose s'il vous plait

Aucune réponse