$this-Session->destroy() n'est pas de détruire la session? v. cakephp 2.0
mon UserController.php a fonction de déconnexion qui ressemble à ce
function logout()
{
$this->Session->destroy('User');
$this->Session->setFlash('You\'ve successfully logged out.');
var_export($this->Session->read('User'));
//$this->redirect('login');
}
mon avis des Utilisateurs/index.ctp
<?php echo $this->Html->link('Logout', array('controller' => 'users', 'action' => 'logout')); ?>
Lorsque je clique sur "se déconnecter" la var_export encore affiche toutes les données de l'Utilisateur et si je retourne aux Utilisateurs/index.ctp-il encore m'indique que la page même si dans mon UserController.php je vérifie si l'Utilisateur est défini
function beforeFilter()
{
$this->__validateLoginStatus();
}
function __validateLoginStatus()
{
if($this->action != 'login' && $this->action != 'logout')
{
if($this->Session->check('User') == false)
{
$this->redirect('login');
}
}
Il ne redirige pas vers la page de connexion et juste m'amène à la page d'index.
}
- $this->Session->détruire ("l'Utilisateur"); Il sera aussi le travail..
Vous devez vous connecter pour publier un commentaire.
La méthode destroy va supprimer le cookie de session et de toutes les sessions de données stockées dans le fichier temporaire du système.
Utilisateur à supprimer, utiliser mieux le supprimer.
Si vous utilisez le composant auth pour authentifier les utilisateurs, vous pouvez vous connecter en utilisant le logout() la méthode.
Voir http://book.cakephp.org/2.0/en/core-libraries/components/authentication.html#logging-users-out pour le Gâteau 2 ou http://book.cakephp.org/1.3/en/view/1262/logout pour le Gâteau 1.3
Et si vous n'utilisez pas le composant auth à tous, vous devriez peut-être avoir un coup d'oeil, car il contient de la boîte de nombreuses fonctionnalités que vous avez déjà ou sera susceptible de mettre en œuvre vous-même.