Andreas Korthaus: IE6 vergisst manchmal Cookies zu senden...

Beitrag lesen

Hallo Philipp!

header("P3P: CP="NOI DEVa TAIa OUR BUS UNI"");
header("Set-Cookie: test=value; path=/;");

Versuch es einfach mal damit, das sollte funktionieren. Oder mit dem
in der MSDN-Seite vorgeschlagenen P3P: CP="CAO PSA OUR".

Vielen Dank, ich werde es gleich testen!

Das große Problem ist einfach, dass man es nicht 1:1 reproduzieren kann, dann wäre ich schon einen großen Schritt weiter.

Natürlich, denn dann wäre es ein "normales Problem" und somit im
Normalfall "normal" zu lösen :-)

Ich schaffe es jetzt doch das Problem 1:1 zu reproduzieren. Man braucht nur 2 Clicks. Mit einem öffne ich ein Popup (Javascript), in diesem Fall sendet der IE den Cookie an den Server. Dann schließe ich das Popup, und ab da sendet der IE den Cookie nicht mehr, egal was ich mache. Da ich zuvor das Popup oft im Hintergrund weiter offen hatte, und es nur unter bestimmten Bedingungen automatisch geschlossen wurde, habe ich das erst jetzt zufällig bemerkt.

Ich öffen das Popup wie folgt:

<input type="button" onclick="window.open('/popup.php','popup-name','width=400,height=450,scrollbars=yes')" value="popup-link">

Ich bastele gleich mal ein Stück Code woran ich das zeigen/weiter testen kann, da ich mir nicht vorstellen kann dass dieses Problem unter allen Umständen auftritt.

  • Du verwendest kein Programm, dass die Systemzeit periodisch
       ändert, oder? - Dies könnte dazu führen, dass die Cookies zu früh,
       zu spät gelöscht werden und würde zu den unreproduzierbaren
       Phänomenen führen.
    nein, sicherlich nicht. Außerdem sollte das auf Session-Cookies keinen Einfluss haben, da hier ja kein Ablauf-Zeitpunkt definiert wird.

Wer weiss ;-)
Aber natürlich, "normalerweise" nicht... Normalerweise sollte dieses Problem aber auch nicht existieren :-)

"Normalerweise" gehört der IE verboten ;-)
Man sollte mal eine Studie machen über den volkswirtschaftlichen Schaden den IE und OE so anrichten...

Zudem sind ja Session-Cookies in PHP nicht zwingend Browsersitzungs-
Cookies, ist jedoch IMHO per Default so eingestellt.

Ja, bei mir ist es jedenfalls so. Anders macht es in den meisten Fällen auch wenig Sinn, IMHO.

Die Cookies werden ja nur im RAM gehalten und beim Schließen des Fensters gelöscht. Ich hatte schonmal dran gedacht, dass der IE unter bestimmten Umständen beim Schließen des Popups den Cookie aus dem RAM löscht, so dass das Opener-Fenster diesen nicht mehr senden kann. Aber das konnte ich bisher nicht verifizieren.

Richtig, das wäre theoretisch auch eine mögliche Ursache, praktisch
scheint ist es mir noch nie aufgetreten und das ist ja auch richtig
und gut so.

Es scheint aber wirklich was hiermit zu tun zu haben. Ist jetzt die Frage ob es immer so ist, oder ob es in meinem Fall irgendeinen besonderen Umstand gibt der dieses Fehlverhalten hervorruft.

Ich werde das Testen und berichten... ;-)

*ich liebe das Gefühl wenn man dem Ziel merklich näher kommt* ;-)

Viele Grüße
Andreas

--
SELFHTML Linkverzeichnis: http://aktuell.de.selfhtml.org/links/