2016-06-17 8 views
-1

Ich setze session_start() auf jeder Seite als erste Aussage.

Die erste Seite stellt $_POST['myVar'] ein, wenn die Seite übergeben wird. Die zweite Seite wertet dies durch eine PHP-Lib aus, die $_SESSION['myVar'] setzt, wenn dies in $ _POST eingestellt ist und nicht bereits in $_SESSION gesetzt ist.

Beim Absenden dieses Formulars und Aufruf der 3. Auswertung $_SESSION['myVar'] ergibt sich, dass die Variable nicht mehr gesetzt ist! Es wird kein session_unset() dazwischen genannt.

Theoretisch ist alles korrekt, aber die Verwendung zeigt das Gegenteil. Was kann falsch oder noch fehlen?

+0

Versuchen Sie, alle Sitzungsvariablen für jede Anfrage auszugeben. – dieend

+0

Haben Sie etwas dagegen, Ihren Code zu teilen? Wir können nicht verstehen, ob Ihr Problem auf falsche Verwendung von Variablen oder einige unerwartete Probleme zurückzuführen ist. – orb

+1

* "Seitensets" $ _POST ['myVar'] '" * - * * Was macht es jetzt genau? – deceze

Antwort

0

In der Seite haben Sie ein Formular, wahrscheinlich ist Ihre erste Seite Sitzung nicht erforderlich. Auf der nächsten Seite (Formularaktionsseite) müssen Sie zuerst die Sitzung starten. Dann können Sie wie $ _SESSION ['fieldName'] = $ _ POST ['fieldName'] geben. Danach können Sie auf den Seiten, auf denen Sie session_start() verwenden, die Daten haben. Hoffe, das hilft ..

Verwandte Themen