PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Nach LogOut und NeuLogIn gleiche SID



skizZ
15-09-2004, 22:16
hi zusammen

habe folgendes problem:

Nachdem ich mich mit session_unset(); und session_destroy(); ausgeloggt habe und mich danach wieder einlogge habe ich die selbe session id wie davor... um eine neue session is zu bekommen, muss ich den Browser erst neu öffnen .. aber warum?! :D

mfg me

Pingu
16-09-2004, 08:01
Hast Du das Manual gelesen?

session_unset (http://de3.php.net/session-unset)
session_unset -- Löscht alle Session-Variablen

Die Funktion session_unset() löscht alle Session-Variablen, die gegenwärtig registriert sind.

Da steht nichts davon, daß die ID gelöscht wird.


session_destroy (http://de3.php.net/session-destroy)
session_destroy -- Löscht alle in einer Session registrierten Daten

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.
Diese Funktion gibt nach erfolgtem Löschen der Daten TRUE zurück und FALSE, wenn dabei ein Fehler auftritt.

Da steht nichts davon, daß die ID gelöscht wird. Im Gegenteil da steht sogar eindeig, daß die ID nicht gelöscht wird.

Was könnte man nun nehmen um eine neue ID zu erzeugen (wobei ich den Sinn darin nicht sehe)? *listederfunktionendurchschau* (http://de3.php.net/manual/de/ref.session.php)
Vielleicht: session_regenerate_id() (http://de3.php.net/manual/de/function.session-regenerate-id.php)

Pingu

EDIT: Auch kann ich den Zusammenhang zwischen Session-ID und Login/-out Status nicht erkennen. Den folgendes Szenario, welches ich im update "meiner" Seite eingebaut haben werde:
Es gibt einen Download-Bereich. In diesem Bereich läßt sich nach verschiedenen Kriterien suchen. Diese Kriterien (zumindest ein Teil) werden in einer bzw. mehreren Session-Variablen gespeichert, z. B. der eine möchte 10 Treffer pro Seite habe der nächste 50 Treffer pro Seite. Dies Einstellung möchte ich natürlich beibehalten unbhängig davon, ob ich gerade eingeloggt bin oder nicht. Also brauch ich mir in einer Session-Variable nur den Login-Status merken.

undefined
16-09-2004, 08:45
hi zusammen

habe folgendes problem:

Nachdem ich mich mit session_unset(); und session_destroy(); ausgeloggt habe und mich danach wieder einlogge habe ich die selbe session id wie davor... um eine neue session is zu bekommen, muss ich den Browser erst neu öffnen .. aber warum?! :D

mfg me
Das hängt mit den Einstellungen der Lebensdauer deiner Session zusammen.
Du kannst es mit ini_set() Steuern. Zusätzlich verwende noch Output Buffering.
Die SESSION ID wird vom Server verwaltet. ;) Siehe im Apache temp Dir ;)

skizZ
16-09-2004, 12:38
vielen dank :D bin erst in php eingestiegen ^^