Der Martin: cookies

Beitrag lesen

Hallo,

ich arbeite mich gerade in cookies ein und naja ich bekomme immer folgenden fehler
Warning: Cannot modify header information - headers already sent ...

ja, das ist ein häufiger Fehler.
Cookies werden durch bestimmte HTTP-Header gesetzt, und diese Header müssen logischerweise als erstes gesendet werden, bevor Nutzdaten an den Client gesendet werden.

dazu gehört folgender code:

... der ja sofort in der ersten Zeile mit der Ausgabe von Nutzdaten (nämlich dem einleitenden html-Tag) beginnt.

<?php
    error_reporting(E_ALL);
    // Client soll Cookie 'xyz' mit dem Wert 'foobar' setzen
    setcookie("xyz", "foobar", time()+60*60);

Und wenn PHP endlich an die Reihe kommt, um den Cookie-Header zu setzen, ist der Zug schon abgefahren. Kehre die Reihenfolge um, so dass die PHP-Anweisungen als erstes kommen, bevor Content ausgegeben wird.

im tutorial muss wohl ein wichtiger satz fehlen ...

Kann ich mir nicht vorstellen, das steht eigentlich so ziemlich überall, wo die PHP-Funktionen header() oder setcookie() erläutert werden.

Gute Nacht,
 Martin

--
Frauen sind wie Elektrizität: Fasst man sie an, kriegt man eine gewischt.