Mailinglisten-Archive |
Hallo Dennis,
On Sun, Oct 26, 2003 at 11:28:09AM +0100, Dennis Sterzenbach wrote:
> Hi Listige,
>
> [...]
> Bei Logout mach ich nun folgendes:
> session_unset();
> session_destroy();
> $_SESSION = array();
> Header('location: ' . $script_basepath);
> exit(0);
Aus http://de3.php.net/manual/de/function.session-destroy.php
Beispiel 2. Löschen einer Session mit $_SESSION
<?php
// Initialisierung der Session.
// Wenn Sie session_name("irgendwas") verwenden, vergessen Sie es
// jetzt nicht!
session_start();
// Löschen aller Session-Variablen.
$_SESSION = array();
// Zum Schluß, löschen der Session.
session_destroy();
?>
> Leider wird aber die selbe (alte) Session-ID weiterhin verwendet.
> Und genau das möchte ich nicht.
Klar, steht ja schon im Handbuch
(http://de3.php.net/manual/de/function.session-destroy.php):
session_destroy() löscht alle in Verbindung mit der aktuellen
Session stehenden Daten. Mit der Session zusammenhängende Globale
Variablen und das Session-Cookie werden nicht gelöscht.
> Gibt es eine Möglichkeit, dass PHP mir eine neue Session-ID erzeugt,
> außer dass der Benutzer den Browser schließt?
Das Cookie musst Du wohl noch löschen. Damit habe ich mich noch nicht
befasst aber unter
http://de3.php.net/manual/de/function.setcookie.php findest Du
folgendes:
Beispiel 2. setcookie() Beispiele zum Löschen
<?php
// Setzen des Verfalls-Zeitpunktes auf 1 Stunde vorher
setcookie ("TestCookie", "", time() - 3600);
setcookie ("TestCookie", "", time() - 3600, "/~rasmus/", ".example.com", 1);
?>
Grüße,
Martin
php::bar PHP Wiki - Listenarchive