Rolf B: Cookie auswerten

Beitrag lesen

Hallo Martl,

if(isset($_COOKIE['Keks']){
...
}

wäre ein Syntaxfehler, aber ich nehme mal an, die zweite ) Klammer ist beim Übertragen ins Forum vertackert worden.

Abgesehen davon klingt das nach einer Ursache, die mit dem Code nicht unbedingt zu tun hat.

Denn die Abfrage

if (isset($_COOKIE['Keks']))

ist weniger streng als

if ($_COOKIE['Keks'] == 'Krümel')

Damit meine ich: Wenn die zweite zutrifft, trifft die erste auf jeden Fall zu. Und es ist auch richtig, eine isset-Abfrage zu machen, denn Du möchtest ja in dem Fall, dass der Keks nicht in der Dose ist, keine Fehlermeldung haben.

Funktioniert die "erweiterte" Abfrage vielleicht rein zufällig? Weil Du den Keks in einem anderen Test gesetzt hast und nun fliegt er rum und krümelt vor sich hin? Schick mal das Krümelmonster in den Webseitenspeicher (Entwicklerwerkzeuge) und lass es die vorhandenen Kekse beseitigen.

Kommt auf dem zweiten Server der Cookie überhaupt an? Guck in den Netzwerktrace des Browsers, in die Response-Header des Requests, der setCookie macht. Da muss ein set-cookie Header drin sein.

Macht dein Script1 Ausgaben, bevor es den Cookie setzt? Wenn ja: Möglicherweise ist auf Server 1 im PHP Output-Buffering aktiv und Du kannst dort Header "nachlegen", nachdem schon Ausgaben gemacht wurden. Ohne Buffering geht das nicht, und es gibt eine Warning "Warning: Cannot modify header information - headers already sent" (die natürlich nicht unterdrückt werden darf).

Ob Output Buffering läuft, kriegst Du mit ini_get('output_buffering') heraus.

Ist alles wilder Spekulatius - keine Ahnung inwieweit das zutrifft.

Rolf

--
sumpsi - posui - obstruxi