$this-Session->destroy() ist nicht die Zerstörung der session? v. cakephp 2.0
meine UserController.php hat der logout-Funktion, die wie folgt aussieht
function logout()
{
$this->Session->destroy('User');
$this->Session->setFlash('You\'ve successfully logged out.');
var_export($this->Session->read('User'));
//$this->redirect('login');
}
meiner Sicht Benutzer/index.ctp
<?php echo $this->Html->link('Logout', array('controller' => 'users', 'action' => 'logout')); ?>
Wenn ich auf "log out" der var_export zeigt immer noch alle Benutzer-Daten und wenn ich zurück zu Benutzer/index.ctp zeigt es mir, dass die Seite, obwohl in meinem UserController.php ich bin der überprüfung, ob Benutzer
function beforeFilter()
{
$this->__validateLoginStatus();
}
function __validateLoginStatus()
{
if($this->action != 'login' && $this->action != 'logout')
{
if($this->Session->check('User') == false)
{
$this->redirect('login');
}
}
Es keine Umleitung auf die login-Seite und ist nur bringt mich zur index-Seite.
}
$dies->Session->destroy('User'); funktioniert Es auch..
InformationsquelleAutor CodeCrack | 2012-02-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die destroy-Methode löscht der session-cookie und alle session-Daten in der temporären Datei system.
Benutzer zu entfernen, benutzen Sie besser löschen.
$dies->Session->löschen() eine leere Session und $this->Session->destroy() destroy die PHP-session und dann erstellen Sie eine neue session.
InformationsquelleAutor del_dan
Wenn Sie die AuthComponent um die Benutzer zu authentifizieren, können Sie melden Sie sich über das logout () - Methode.
Sehen http://book.cakephp.org/2.0/en/core-libraries/components/authentication.html#logging-users-out für Kuchen 2 oder http://book.cakephp.org/1.3/en/view/1262/logout für Kuchen-1.3
Und wenn Sie nicht die AuthComponent, sollten Sie vielleicht einen Blick auf, wie es enthält, aus der box zu vielen Funktionen, dass Sie bereits jetzt oder demnächst wahrscheinlich selber implementieren.
InformationsquelleAutor nIcO