PHP Unset Session-Variable
Ich bin ein noob-Programmierer, so dass ich entschuldige mich im Voraus für etwaige offensichtliche Fehler. Ich habe in der vergangenen Woche die Erstellung einer Produkt-Datenbank ein bisschen was. Ich habe zu dem Punkt, wo ich kann Produkte hinzufügen, mit eine form, alle Produkte anzeigen Hinzugefügt etc. Ich habe nicht mit Sitzungen, die über das Formular eingegebenen Daten. Ich bin kämpfen, um Sie zu umfassen bekommen ein löschen von Produkt-Seite arbeiten, ich habe versucht, mit unset zum löschen der Variablen, aber kann es nicht erhalten, zu arbeiten.
Produkt HINZUFÜGEN Seite, die die session-variable:
$_SESSION['Products'][] = $_POST; //is how i set the session on the add products page.
unset $_SESSION['Products'][]; //is how i have tried to clear the session although it does not work.
Beliebigen Punkt in die richtige Richtung, wird sehr geschätzt!
InformationsquelleAutor der Frage boothprod | 2016-06-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie unset session-Variablen verwenden:
session_unset
- Befreit alle session-Variablen (Es ist gleich mit:$_SESSION = array();
)unset($_SESSION['Products']);
- Unset nur Produkte index in der session-variable. (Erinnern: Sie haben zu verwenden, wie eine Funktion, nicht wie Sie verwendet)session_destroy
— Zerstört alle Daten registriert, um eine SitzungWissen, den Unterschied zwischen der Verwendung
session_unset
undsession_destroy
Lesen Sie diese SO beantworten. Das hilft.InformationsquelleAutor der Antwort Thamilan
Unset ist eine Funktion. Daher müssen Sie Einreichen, welche variable muss vernichtet werden.
In Ihrem Fall
Wenn Sie zurücksetzen müssen ganze session-variable einfach anrufen
InformationsquelleAutor der Antwort Don D
Wenn Sie komplett löschen wollen, um die Sitzung, die Sie verwenden können:
Eigentlich beide sind nicht notwendig, aber es tut nicht weh.
Wenn Sie löschen möchten nur einen bestimmten Teil ich glaube, Sie brauchen diese:
je nachdem, was Sie brauchen.
InformationsquelleAutor der Antwort JRsz
unset
ist eine Funktion, kein operator. Verwenden Sie es wieunset($_SESSION['key']);
zu deaktivieren das session-key. Sie können jedoch, verwenden Siesession_destroy();
als gut. (Stellen Sie sicher, um die Sitzung zu starten mitsession_start();
)InformationsquelleAutor der Antwort mehulmpt
Bin ich mit dieser Antwort den Fall, dass jemand kommt, um diese Seite aus dem gleichen Grund habe ich getan. Ich habe gerade verschwendet eine peinliche Menge an Zeit, die versucht zu verfolgen, das problem nach unten. Ich rief:
aus einem logout-script. Dann navigieren zu einer Seite, die erforderliche Anmeldung und der server noch dachte, dass ich angemeldet war. Das problem war, dass das logout-Skript wurde nicht nennen:
Lösche eine session var NICHT FUNKTIONIERT, es sei denn, Sie starten die Sitzung erste.
InformationsquelleAutor der Antwort Jeff Martin