$_POST Variable in Cookie

Hallo zusammen,

möchte aus einem Formular die Daten an eine Seite übergeben und dort in ein Cookie speichern.
Doch leider wird der aktuelle Wert im Cookie auf der Seite weiter.php erst mit erneutem Aktualisieren der weiter.php angezeigt. Warum geht das nicht gleich?

Hier der Code.



<?php setcookie("id1", $_POST['id']);<br />echo $\_COOKIE['id1']; 
?\>

Gruß und Dank

Hallo Alex,

cookie wird auf jeden Fall gesetzt, jedoch kann der Browser den „neuen“ Inhalt ja noch nicht senden, wenn er in der weiter.php erst gesetzt wird.

Möglich wäre da nur den Cookie mittels Javascript vor dem Request zu ändern, dann hat die Folgeseite den neuen Cookie-Inhalt.

h♥rzlichen Gruß
Nitya

Hallo und danke für die Antwort,

also mit Javascript wollte ich noch nicht arbeiten, sondern so viel wie möglich über PHP arbeiten.

Ist es auch nicht möglich den Cookie auf der ursprünglichen Seite zu setzen und dann erst auf die weiter.php zu gehen?

Gruß

Hallo,

Ist es auch nicht möglich den Cookie auf der ursprünglichen
Seite zu setzen und dann erst auf die weiter.php zu gehen?

der Browser schickt den cookie beim Request mit, der gerade „aktuell“ ist.
Die ursprüngliche Seite hat ja die Daten aus dem Forumlar noch nicht … das geht wirklich nur mit JS.

Aber ist das nötig?
Du hast doch die Daten aus dem Post-Request. Warum willst Du diese „gleichzeitig“ nochmals aus dem Cookie lesen?

h♥rzlichen Gruß
Nitya

Hallo,

Aber ist das nötig?
Du hast doch die Daten aus dem Post-Request. Warum willst Du
diese „gleichzeitig“ nochmals aus dem Cookie lesen?

weil ich mehrere Seiten habe, die mit diesen Daten im Cookie versorgt werden müssen. Es darf auch eine andere Lösung sein. Über Sessions habe ich es auch leider nicht lösen können.

Gruß

Hallo,

weil ich mehrere Seiten habe, die mit diesen Daten im Cookie
versorgt werden müssen. Es darf auch eine andere Lösung sein.
Über Sessions habe ich es auch leider nicht lösen können.

Ohne Javascript … sehe ich da nur eine Möglichkeit:
die anderen Seiten dürfen erst nach der weiter.php verfügbar sein. Also nachdem der Cookie „neu“ gesetzt ist.

h♥rzlichen Gruß
Nitya

Danke!
OK, danke für die Antwort!

Hi,

weil ich mehrere Seiten habe, die mit diesen Daten im Cookie
versorgt werden müssen.

ja und wo ist denn das Problem?
Die weiter aufgerufene Seite erhält die Daten über POST und kann (vor jeder HTML-Ausgabe) zum Speichern dieser in einem Cookie auffordern und dieses steht dann auch allen anderen Seiten, für die das Cookie gültig ist, zur Verfügung.

Gruß
Ingo

Hallo nochmal,

ich habe jetzt zwar Sessions als Lösung erfolgreich umsetzen können, aber auch bei den Cookies eine Lösung gefunden.

Ich setze am Anfang des Codes den Cookie

setcookie("id\_vn");

Und weier unten Weise ich die Postvariabl den Cookie zu

$\_COOKIE['id\_vn']=$\_POST['id\_vn'];

Das geht!

Gruß