Hallo zusammen,
wir schreiben gerade ein PHP-Programm, das sich über ein Cookie mit einer Java-Applikation unterhält. Beide Applikationen können dieses Cookie setzen, lesen und löschen.
Da wir auf dem gleichen Server mit der gleichen Domain etc. unterwegs sind, ist das prinzipiell auch kein Problem. Aber: Wenn man in PHP ein Cookie setzt (mit setcookie()), wird der Wert des Cookies automatisch urlencoded. Auf der anderen Seite wird er beim Auslesen - also z.B. beim lesen von $_COOKIE['cookiename'] - automatisch urldecoded.
Die Java-Applikation macht beides nicht. Das Ergebnis ist, dass wir das Cookie nicht korrekt setzen bzw. lesen können, wenn bestimmte Zeichen im Inhalt vorkommen.
Wir können in PHP für das setzen des Cookies setrawcookie() nutzen, dann ist das von uns gesetzte Cookie nicht urlencoded und die Java-Applikation kann es korrekt auslesen.
Was können wir aber für die andere Richtung tun? Wir haben keine Möglichkeit gefunden, ein Cookie zu lesen, ohne dass der Wert urldecoded wird. Das führt z.B. dazu, dass ein + im Cookie in PHP als Leerzeichen ankommt.
Weiß jemand, wie man ein Cookie auslesen kann, ohne das PHP automatisch urldecode macht?
Vielen Dank für die Hilfe!
Irene