Sven Rautenberg: Session-Start()-Fehlermeldung bei Cookie

Beitrag lesen

Moin!

Vielen Dank, habe ich gemacht.

Aber dann kommt die Fehlermeldung, mit der ich nicht weiter komme. Man findet recht viel darüber, aber ich werde nicht schlauer aus dem was ich da lese. Kann mir noch mal bitte jemand helfen?

Die Fehlermeldung lautet:
"Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at...)"

Übersetzt:
Warnung: Befehl "session_start": Kann das Session-Cookie nicht senden, weil die HTTP-Header schon gesendet wurden (der Grund liegt in HTML-Output, erzeugt in Skript ... Zeile ...).

Jeglicher Textoutput, egal ob mit ECHO, oder durch Zeichen außerhalb von <?php ?>, sorgt dafür, dass die HTTP-Header abgeschickt werden, was verhindert, dass Funktionen wie header(), setcookie() oder eben session_start(), die alle HTTP-Header verändern/neu setzen, noch arbeiten können.

Lösung: Eliminiere den Output an der von der Fehlermeldung genannten Stelle. Wenn dort unabsichtliche Leerzeichen, Leerzeilen, eine UTF-8-BOM, oder HTML-Ausgabe vor dem allerersten PHP-Quelltext stehen, entferne dies bzw. setze es hinter den Funktionsaufruf session_start().

- Sven Rautenberg

--
"Love your nation - respect the others."