Mailinglisten-Archive |
> wie kann ich erreichen, dass eine Session beim Schliessen des > Browserfensters automatisch zerstört wird? Ich habe das Gefühl, den > Wald vor lauter Bäumen nicht zu sehen... Wenn die Session nicht als Cookie gespeichter wird sollte sie das eigentlich tun. Da ich sebst die Sessinverwaltung nicht so detaiiet kenne, mache ich meistens meins Sessions selbst und schreibe meine Variablen serialisiert in ein großes Datenbankfeld: sid int ip vchar(15) session text zeit timestamp. Dazu generiere ich mir eine Session-id und schreibe die IP-Nummer auch noch in die Datenbank, dass heist, der Verlust der Session-ID führt zum erlöschen der Session. Problem: In der Browser History ist die ID gespeichert! Workaround: Timstamp läuft irgendwann ab: $q = "UPDATE user SET ip=0, sid=0 WHERE now()-zeit > 9000" und damit der User sich nicht ständig neu einloggen muss: $q= "UPDATE user SET zeit=NULL, session=" . serialize($session) . " WHERE sid=$sid"; zeit=NULL setzt den timestamp automatisch neu. So wird MySQL-Zeit und PHP Zeit nie vermischt und kann auch nicht zu Problemen führen. Gruß Ernst
php::bar PHP Wiki - Listenarchive