PHP Problem mit Session_destroy()

joeboe

Mitglied
Hallo Leute,

ich habe ein Problem mit dem löschen der Session und dem Reset der Session-id.

Ich habe meinen eigenen webshop programmiert der mittels session_id den Warenkorb verwaltet. Die Session startet schon beim ersten Besuch der Home-Seite da ein Mini-Warenkorb im Head der Seite eingebettet ist.

Wenn der Bestellvorgang abgeschlossen ist werden die Daten aus der Warenkorb-table in die Order-table transferiert, alle Warenkorb einträge zur session_id gelöscht und daraufhin soll die session destroyed werden.

ich gehe auf der letzten Script Seite wiefolgt vor:
PHP:
session_start();

// Code

echo session_id();

session_destroy();
$_SESSION = array();

echo session_id();

Die Ausgabe dieser Seite gibt auch nur den ersten echo session_id(); aus, aber wenn ich im Shop von vorne navigiere habe ich wieder die alte session id. Kann mir einer helfen? Ich stehe auf den schlauch und alle google-SuFu Trys sind fehlgeschlagen.
 
Hallo, ich benutze auch die Session-Funktion von PHP (also aktuell noch, entwickle gerade eine eigene Session-Umgebung) und da benutze ich nicht nur session_destroy() sondern noch drei weitere. Das Ganze sieht bei mir dann immer so aus:
PHP:
ob_start();
session_start();
session_unset();
session_destroy();
Damit kannst du dir sicher sein, dass die Session beendet wurde :)
 
Habe dein Skript gerade mal bei mir probiert und bei mir ändert sich ebenfalls die ID nicht. Ich werde mal schauen, wo das Problem liegt.
 
[...] alle Warenkorb einträge zur session_id gelöscht und daraufhin soll die session destroyed werden.
Wieso eigentlich?
Weil du dir nicht sicher bist, ob wirklich alle mit der Session im Zusammenhang stehenden Informationen gelöscht wurden?

Es ist ja der Sinn einer Session, einen User eben anhand dieser wieder zu erkennen.
 
für den (unwahrscheinlichen) Fall dass ein Kunde zwei order betätigt werden die beiden Order unter der selben sessionid abgespeichert. Da der Kunde aber nach der Bestellung noch seine Order und Status über die ID Tracken sollte dürfen nciht zwei order unter der selben ID laufen.

Habe das aber nun geändert. es wird eine (etwas kürzere) random zahl generiert über die die order trackbar ist. Drum ist die Session-Id nun eigentlich unwichtig geworder.

Danke dennoch für eure mühen.
 
Zurück