Andreas Korthaus: Nach Weiterleitung trotzdem auf $_POST zugreifen?

Beitrag lesen

Hi Ben!

Also brauche ich auf jeder Seite einfach nur eine neue Session starten, die Daten der letzten Sessiona auslesen und dann alles insgesamt wieder per Header nach dem Absenden an das nächste Formular zu übergeben?

Was ich beschreiben habe war der IMHO einfachste Weg das ganze über 2 Seiten zu lösen. bei mehr Seiten würde ich das anders machen.

Wenn Du z.B. 3 Seiten hast, 1. Adresse, 2. Zahlungswiese, 3. Bestätigung

dann würde ich auf jeder Seite mit eine Session starten, auf der 2. Seite würde ich die POST-Daten von der 1. Seite mit

$_SESSION['Adresse'] = $_POST;

in die Session schreiben, auf der nächten mit

$_SESSION['Zahlungswiese'] = $_POST;

und dann im Script welches die Bestellung validiert und ausführt kannst Du auf die Daten der 3. Seite mit $_POST zugreifen, auf die Adresse mit $_SESSION['Adresse'] und auf die Zahlungsweise mit $_SESSION['Zahlungswiese'].

Die SessionID würde ich immer mit

header("Location: scriptXY.php?".session_name()."=".session_id());

übergeben. Also immer für scriptXY.php die nächte Seite angeben, daran wird dann die SessionID als Parameter angehängt, anhand der PHP dann die serverseitig gespeicherten Daten zuweisen kann.

Scheint ja mit etwas Übung gar nicht so umständlich zu sein, wie ich es mir vorgestellt hatte. :)

Ist es auch nicht, aber man muß das Session-Konzept einmal verstehen, und dazu sind die beiden Links die Du jetzt erhalten hast hervorragend geeignet. Lies Dir das mal durch und wenn Du dann noch Fragen hast frag ;-)

Grüße
Andreas