10.14 Den Fehler »headers already sent« vermeiden
Problem
Sie versuchen, mit header()
einen HTTP-Header oder mit setcookie()
ein Cookie zu senden, aber PHP meldet den Fehler »headers already sent«.
Lösung
Dieser Fehler tritt auf, wenn Sie Ausgaben senden, die keine Header sind, und danach header()
oder setcookie()
aufrufen.
Schreiben Sie Ihren Code so um, dass alle Ausgaben erst nach dem Senden der Header vorgenommen werden:
// Korrekt setcookie("name", $name); print "Hallo $name!"; // Falsch print "Hallo $name!"; setcookie("name", $name); // Korrekt <?php setcookie("name",$name); ?> <html><title>Hallo</title>
Diskussion
Eine HTTP-Nachricht besteht aus einem Header und einem Body, die in dieser Reihenfolge an den Client gesendet werden. Sobald Sie mit ...
Get PHP 5 Kochbuch, Third Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.