• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Kann Cookie nicht setzten

xXxPeterPanxXx

Neues Mitglied
Hi,

ich habe mal wieder ein Problem. Mein Skript sendet einfach keine Cookies.

Ich bekomme immer diese Fehlermeldung: Warning: Cannot modify header information - headers already sent by (output started at /is/htdocs/wp1158326_JHB43K6EP5/www/coder/inc/header.inc.php:11) in /is/htdocs/wp1158326_JHB43K6EP5/www/coder/tutorial.php on line 94.

Hier einmal der Code aus der Tutorial.php:

PHP:
setcookie("kommentar_$ein_name_url", "spamprotection", time()+300);

Und noch der Code aus der header.inc.php (auch wenn ich nicht weiß was das mit dem Fehler zu tuen hat) :

PHP:
        <title><?php echo $title; ?> | little-coder.de</title>

Seht ihr einen Fehler?

MfG xXxPeterPanxXx
 
Vor dem setcookie wird sich noch irgendwo ein Leerzeichen oder eine andere Ausgabe befinden, dies darf wohl nicht sein, sagt jedenfalls die Fehlermeldung.

Wie bei Sessions darf vor dem session_start() kein Leerzeichen und keine Ausgabe stehen.
 
Aber setcookie muss in meinem Fall am Ende stehen:-(

Und vor setcookie wird auch noch ein Tutorial ausgegeben. Kann man das nicht an ders machen?

MfG xXxPeterPanxXx
 
Da kann ich dir leider nicht weiter helfen, ich habe noch nie mit Cookies gearbeitet.

Aber du kannst es ja ganz einfach herausfinden, ob das setcookie am Anfang stehen muss, oder ob es ein anderer Fehler ist. Setz es einfach mal an den Anfang und teste, ob der Fehler dann noch auftritt.
 
nein, bekommst du nicht.
cookies MÜSSEN vor jeder anderen ausgabe gestzt werden. alles andere ist eigentlich auch nicht wirklich sinnvoll.
 
Auf dem Bildschirm?
Damit hat das ganze nichts zu tun. Es geht um den http-header, in diesem werden die Cookies an den Browser übermittelt. (Nur) in PHP ist das so, dass dieser header solange unterdrückt wird, bis die erste HTML Ausgabe erfolgt. Ist der header aber ersteinmal draussen, können definitiv keine Cookies mehr gesendet werden.

Was du mit Bildschirm meinst, ist der Viewport des Browsers. Dort wird alles angezeigt, was nach dem http-header kommt. Dieser wird vom Browser nicht angezeigt nur intern verwendet, es gibt aber Browser Plugins mit denen du ihn auch dort sichtbar machen kannst.
 
Auf dem Bildschirm?
Damit hat das ganze nichts zu tun. Es geht um den http-header, in diesem werden die Cookies an den Browser übermittelt. (Nur) in PHP ist das so, dass dieser header solange unterdrückt wird, bis die erste HTML Ausgabe erfolgt. Ist der header aber ersteinmal draussen, können definitiv keine Cookies mehr gesendet werden.

Was du mit Bildschirm meinst, ist der Viewport des Browsers. Dort wird alles angezeigt, was nach dem http-header kommt. Dieser wird vom Browser nicht angezeigt nur intern verwendet, es gibt aber Browser Plugins mit denen du ihn auch dort sichtbar machen kannst.

Wie du schon gesagt hattest meine ich natürlich den Viewport :D
Der Header kann ja nicht mehr verändert werden, sobald eine Ausgabe auf dem Viewport passiert ist.
 
Nein, der header kann nicht mehr verändert werden, wenn er gesendet wurde. Wenn der Browser anfängt die Seite darzustellen, ist der Server meistens schon lange fertig.
 
Zurück
Oben