Zur Navigation

Cookieswerden nicht ausgegeben

1 AndiN

Ich habe ein Problem mit der Cookie-Ausgabe.
Ich setze Cookies mit folegdem Aufruf:

<a href="#" onclick="add_merkliste('13');">zur Merkliste hinzufügen</a>

<script type="text/javascript">
function add_merkliste(oid)
{
var a = new Date();
a = new Date(a.getTime() +1000*60*60*24);	
document.cookie = oid+"="+oid+"; expires="+a.toGMTString()+";";
window.location.href = "http://<?php echo $_SERVER[SERVER_NAME]."".$_SERVER[REQUEST_URI]; ?>";
}
</script>

Das Setzen der Cookies klappt auch hervorragend (laut Cookie-Ansicht von Firefox). Ich setze Cookies an zwei verschiedenen Stellen jedoch mit der absolut selben "onClick"-Aktion. Nun ist es so, dass zwar alle Cookies in der Firefox-Cookieansicht vorhanden sind, jedoch wenn ich echo $_COOKIE['cookiename']; versuche erscheinen nur die Cookies der einen Stelle wo nich sie generiere.

Hat jemand eine Idee was ich grundlegend falsch mache?

05.07.2012 13:51

2 Jörg Kruse

Nun ist es so, dass zwar alle Cookies in der Firefox-Cookieansicht vorhanden sind, jedoch wenn ich echo $_COOKIE['cookiename']; versuche erscheinen nur die Cookies der einen Stelle wo nich sie generiere.

"nich" heißt hier "ich nicht"?

Allgemein gilt, dass Cookies erst beim nächsten Seitenaufruf gelesen werden können. Falls dies in einem anderen oder übegeordneten Verzeichnis geschieht, muss beim Cookie-Setzen gegebenfalls noch der Parameter path entsprechend angepasst werden

05.07.2012 14:00 | geändert: 05.07.2012 14:01

3 AndiN

Nun ist es so, dass zwar alle Cookies in der Firefox-Cookieansicht vorhanden sind, jedoch wenn ich echo $_COOKIE['cookiename']; versuche erscheinen nur die Cookies der einen Stelle wo ich sie generiere.

Sorry für den Vertipper. Details habe ich dir per Email zukommen lassen.

06.07.2012 10:40

4 Jörg Kruse

Das Problem lag wie in Beitrag 2 gemutmasst, dass das Cookie in einem Unterverzeichis gesetzt wurde und im darüberliegenden Verzeichnis nicht gelesen werden konnte.

Abhilfe schafft es hier, den Cookie-Pfad auf das DocumentRoot-Verzeichnis zu setzen:

document.cookie = oid+"="+oid+"; expires="+a.toGMTString()+"; path=/"; 

06.07.2012 13:28

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]