Halihallo Rankin
Das Problem ist, ich will eigentlich keine p3p Header mitgeben, nur irgendwie akzeptiert der IE das Cookie nicht wenn ich einfach
Warum sagst du das nicht gleich?
setcookie ("testcookie", "test", $zeit, "/", ".localhost", 0);
zum Erstellen des Cookies und
echo $_COOKIE["testcookie"];
Wie oft denn noch? - $_COOKIE[] enthält alle empfangenen Cookies,
senden tust du sie über setcookie. Wie Stefan schon sagt: Ausgeben
kannst du den Cookie erst beim nächsten Scriptaufruf, denn erst dann
wird er vom Client gesendet und ist in $_COOKIE[] "sichtbar".
Übrigens: Meine letzte Aussage, dass für jeden $_COOKIE-Eintrag ein
setcookie aufgerufen wird, stimmt nicht. Über $_COOKIE[] liest man
die Cookies nur ein.
zum Ausgeben des Wertes ("test") mache. Opera frisst das so und ich meine früher auch IE.
Das kann mehrere Ursachen haben und diese haben nicht umbedingt mit
P3P zu tun.
- falls das Script läuft nicht auf dem Host ".localhost" läuft, wird
der Cookie nicht gespeichert, da die Domainangabe zwingend mit dem
Aufrufenden Host übereinstimmen muss (bzw. Teile davon).
Lass diese Angabe versuchsweise weg.
- Setz die Expires-Angabe mal auf einen Tag, dass du wirklich damit
testen kannst und nicht deiner eigenen Expires Angabe zum Opfer
wirst.
- Hast du Cookie im IE _wirklich_ aktiviert?
- Lass das Script auf der Console ausgeben: Werden tatsächlich
Set-Cookie headers versendet?
- Falls dein Script eine Third-Party-Anwendung ist, sprich von einer
ganz anderen Website (Hostname anders) eingebunden wird. Dann
könnte es an P3P liegen, ja.
Liegt das etwa nicht an dem Nichtbenutzen von p3p? Wenn nein, wieso gehts nicht?
s. oben. Und sag das nächste mal nicht, dass du den Fehler auf P3P
zurückführen konntest, wenn du dir dessen nicht sicher bist; du
beschreibst nur die Symptome und _wir_ folgern.
Viele Grüsse
Philipp