Wie kann man das "Headers already sent" - Fehler in PHP
Beim laufen meinen script, ich bekomme mehrere Fehler wie dieser:
Warning: Cannot modify header information - headers already sent by (output started at /some/file.php:12) in /some/file.php auf Zeile 23
Den Zeilen in der Fehlermeldung genannten Nachrichten enthalten header()
und setcookie()
Anrufe.
Was könnte der Grund dafür sein? Und wie man es beheben?
Lesen Sie: stackoverflow.com/questions/1912029/...
Stellen Sie sicher, dass kein text ausgegeben wird (
Verwenden Sie die
~~~~~~~~~~ Ihre Datei-CODIERUNG sollte nicht
Stellen Sie sicher, dass kein text ausgegeben wird (
ob_start
und ob_end_clean()
vielleicht nützlich hier). Sie könnten dann ein cookie oder session gleich ob_get_contents()
und verwenden Sie dann ob_end_clean()
zum löschen der Puffer.Verwenden Sie die
safeRedirect
Funktion in meinem PHP-Bibliothek: github.com/heinkasner/PHP-Library/blob/master/extra.php~~~~~~~~~~ Ihre Datei-CODIERUNG sollte nicht
UTF-8
, aber UTF-8 (Without BOM)
~~~~~~~~~~~InformationsquelleAutor |
Du musst angemeldet sein, um einen Kommentar abzugeben.
Keine Ausgabe vor dem senden der Header!
Funktionen senden/ändern der HTTP-Header aufgerufen werden muss , bevor irgendeine Ausgabe gemacht wird.
Zusammenfassung ⇊
Ansonsten schlägt der Aufruf fehl:
Einige Funktionen ändern der HTTP-header sind:
header
/header_remove
session_start
/session_regenerate_id
setcookie
/setrawcookie
Ausgabe:
Unbeabsichtigte:
<?php
oder nach?>
Beabsichtigt:
print
,echo
- und andere Funktionen zu produzieren Ausgabe<html>
Abschnitte vor<?php
code.Warum ist es passiert?
Zu verstehen, warum die Header müssen gesendet werden, bevor die Ausgabe ist es notwendig
an sich ein typisches HTTP
Antwort. PHP-Skripte vor allem erzeugen Sie HTML-Inhalte, sondern auch einen
Satz von HTTP/CGI-Header an den webserver:
Seite/Ausgabe immer folgt der Header. PHP übergeben
Header an den webserver ersten. Es kann nur ein mal machen.
Nach dem doppelten Zeilenumbruch kann es nie mehr ändern.
Wenn die PHP empfängt die erste Ausgabe (
print
,echo
,<html>
) es wirdflush alle gesammelten Kopfzeilen. Danach senden Sie die Ausgabe
es will. Aber Zusendung von weiteren HTTP-Header ist unmöglich.
Wie finden Sie heraus, wo die vorzeitige Ausgabe aufgetreten?
Den
header()
Warnung enthält alle relevanten Informationen zusuchen Sie die problem-Ursache:
Hier "line 100" bezieht sich auf das Skript, in dem die
header()
Aufruf gescheitert.Den "output started at" Hinweis in der Klammer ist mehr als deutlich.
Es ist die Quelle der vorherigen Ausgabe. In diesem Beispiel ist es
auth.php
und Linie
52
. Das ist, wo Sie suchen mussten vorzeitigen Ausgang.Typische Ursachen:
Print, echo
Absichtlich Ausgabe von
print
undecho
Aussagen kündigendie Möglichkeit zum senden von HTTP-Headern. Der Ablauf der Anwendung muss
umstrukturiert werden, um zu vermeiden, dass. Verwenden Funktionen
und das templating-Systeme. Sicher
header()
calls auftreten vor Nachrichtenaus geschrieben.
Funktionen, produzieren Ausgabe gehören
print
,echo
,printf
,vprintf
trigger_error
,ob_flush
,ob_end_flush
,var_dump
,print_r
readfile
,passthru
,flush
,imagepng
,imagejpeg
unter anderen, und benutzerdefinierte Funktionen.
Raw HTML-Bereiche
Nicht geparsten HTML-Abschnitte in einer
.php
Datei sind direkte Ausgabe als gut.Skript Bedingungen, die auslösen, dass eine
header()
Aufruf muss beachtet werdenvor alle raw
<html>
Blöcke.Verwendung einer Template-Schema zur separaten Bearbeitung von output-Logik.
Whitespace vor
<?php
für "script.php Linie 1" WarnungenWenn die Warnung bezieht sich auf die Ausgabe in Zeile
1
, dann ist es meistführende Leerzeichen, text-oder HTML vor der Eröffnung
<?php
token.Ebenso kann es auftreten, für die angehängten scripts oder script-Abschnitte:
PHP eigentlich frisst ein single Zeilenumbruch nach schließen tags. Aber es wird nicht
Ausgleich mehrere Zeilenumbrüche oder Tabulatoren oder Leerzeichen verschoben in diese Lücken aus.
UTF-8-BOM
Zeilenumbrüche und Leerzeichen allein kann ein problem sein. Es gibt aber auch "unsichtbare"
Charakter-Sequenzen, die das verursachen kann. Am bekanntesten der
UTF-8-BOM (Byte-Order-Mark)
was nicht angezeigt wird von den meisten text-Editoren. Es ist die byte-Reihenfolge
EF BB BF
, dieist optional und überflüssig für UTF-8-codierte Dokumente. PHP hat jedoch zur Behandlung von
als raw-Ausgabe. Es kann zeigen, wie die Charaktere

im Ausgang (wenn der clientinterpretiert das Dokument als Latin-1) oder ähnlichen "Müll".
Insbesondere grafische Editoren und Java-basierte IDEs sind blind für seine
Präsenz. Sie nicht visualisieren (verpflichtet durch den Unicode-standard).
Die meisten Programmierer und Konsolen-Editoren jedoch nicht:
Gibt es einfach zu erkennen, das problem früh auf. Andere Editoren können identifizieren
Ihre Präsenz in einer Datei/Einstellungen-Menü (Notepad++ unter Windows identifizieren können und
das problem zu beseitigen),
Eine weitere Möglichkeit zur Prüfung der Stücklisten-Präsenz ist ein Rückgriff auf eine hexeditor.
Auf *nix-Systemen
hexdump
ist in der Regel vorhanden,wenn nicht eine grafische Variante, die vereinfacht die überwachung dieser und anderer Fragen:
Leicht zu beheben ist, um den text-editor zum speichern von Dateien als "UTF-8 (ohne BOM)"
oder ähnliche solcher Nomenklatur. Oft Neulinge sonst in dem resort, die Schaffung neuer
Dateien einfach kopieren&einfügen des vorherigen code zurück.
Korrektur utilities
Es gibt auch automatisierte tools zu untersuchen und schreiben von text-Dateien
(
sed
/awk
oderrecode
).Für PHP-spezifisch, es gibt die
phptags
- tag aufgeräumter.Es umschreibt schließen und öffnen Sie die tags in langen und kurzen Formen, aber auch leicht
behebt führende und nachfolgende Leerzeichen, Unicode und UTF-x Stückliste Fragen:
Ist es gesund zur Verwendung auf einem ganzen gehören oder Projekt-Verzeichnis.
Leerzeichen nach
?>
Wenn die Fehler-Quelle wird erwähnt, dass hinter dem
schließende
?>
dann ist dies, wo einige Leerzeichen oder unformatierten text habe geschrieben.
Die PHP-Ende-marker nicht kündigen Skript Abwicklung dieses
Punkt. Alle text - /Raum-Zeichen, nachdem es geschrieben werden als Inhalt der Seite
noch.
Es wird allgemein empfohlen, insbesondere für Neuankömmlinge, die nachfolgende
?>
PHPschließende tags weggelassen werden sollte. Diese meidet einen kleinen Teil dieser Fälle.
(Ganz allgemein
include()d
- Skripte sind die Ursache.)Fehler Quelle erwähnt als "Unknown on line 0"
Es ist in der Regel eine PHP-Erweiterung von php.ini-Einstellung, wenn kein Fehler Quelle
ist konkretisiert.
gzip
- stream encoding-Einstellungoder die
ob_gzhandler
.extension=
Moduldie Generierung einer impliziten PHP-Start - /Warnmeldung angezeigt.
Vorstehenden Fehlermeldungen
Wenn ein anderes PHP-Anweisung oder Ausdruck bewirkt, dass eine Warnmeldung oder
Kündigung printeded heraus, dass zählt auch als vorzeitige Ausgabe.
In diesem Fall müssen Sie meiden den Fehler,
Verzögerung der Ausführung der Anweisung, oder unterdrücken Sie die Meldung mit z.B.
isset()
oder@()
-wenn entweder nicht behindert debugging später auf.
Keine Fehlermeldung
Wenn Sie
error_reporting
oderdisplay_errors
deaktiviert prophp.ini
,dann wird keine Warnmeldung angezeigt. Aber ignorieren von Fehlern nicht das problem gehen
entfernt. Header noch nicht gesendet werden kann, nachdem die vorzeitige Ausgabe.
So, wenn
header("Location: ...")
leitet, treten Fehler auf, es ist sehrratsam Sonde für Warnungen. Reaktivieren Sie mit zwei einfachen Befehlen
oben auf dem Aufruf-Skript:
Oder
set_error_handler("var_dump");
wenn alle Stricke reißen.Apropos redirect-Header, sollten Sie Häufig die Verwendung einer Redewendung wie
diese für die endgültige code-Pfade:
Vorzugsweise auch eine utility-Funktion, die druckt ein Benutzer-Nachricht
im Falle von
header()
Ausfälle.Output-buffering als workaround
PHPs die Ausgabe-Pufferung
ist eine Problemumgehung um dieses Problem zu lindern. Oft funktioniert zuverlässig, muss aber nicht
Ersatz für die richtige Anwendung die Strukturierung und Trennung von Ausgabe-Steuerung
Logik. Der eigentliche Zweck ist die Minimierung der chunked-Transfer auf den webserver.
Den
output_buffering=
die Einstellung kann trotzdem helfen.
Konfigurieren Sie es im php.ini
oder über .htaccess
oder sogar .Benutzer.ini auf
moderne FPM/FastCGI-setups.
Ermöglicht wird es erlauben, PHP buffer output-statt der übergabe an den webserver
sofort. PHP kann somit Aggregat HTTP-Header.
Kann es ebenfalls sein, sich mit einem Aufruf
ob_start();
oben auf dem Aufruf-Skript. Das ist jedoch weniger zuverlässig für mehrere Gründe:
Selbst wenn
<?php ob_start(); ?>
beginnt das erste Skript, whitespace-Zeichen oder einStückliste bekommen könnte gemischt vor, und machen es damit unwirksam.
Kann es verbergen, sind Leerzeichen für die HTML-Ausgabe. Aber sobald die Anwendung
die Logik versucht zu senden binären Inhalt (ein generiertes Bild zum Beispiel),
die gepufferten überflüssige Ausgabe wird zu einem problem. (Erforderlich
ob_clean()
als furher Abhilfe.)
Den Puffer in der Größe begrenzt wird, und kann leicht zu überrennen, wenn Sie auf Standardwerte.
Und das ist keine Seltenheit-entweder, schwer auf die Spur
wenn es geschieht.
Beide Ansätze können daher unzuverlässig werden - insbesondere beim Wechsel zwischen
Entwicklungsmuster und/oder Produktions-Server. Das ist der Grund, warum die Ausgabe-Pufferung ist
allgemein betrachtet nur eine Krücke /streng umgehen.
Siehe auch die einfache Nutzung, Beispiel
in der Anleitung, und weitere vor-und Nachteile:
Aber es funktionierte auf dem anderen server!?
Wenn Sie nicht bekommen, die Header Warnung vor, dann die die Ausgabe-Pufferung
php.ini-Einstellung
hat sich geändert. Es ist wahrscheinlich nicht auf dem aktuellen/neuen server.
Überprüfung mit
headers_sent()
Können Sie immer
headers_sent()
zu untersuchen, wennes ist immer noch möglich... senden von Headern. Was nützlich ist, bedingt drucken
eine info oder andere fallback-Logik.
Nützlich fallback workarounds sind:
HTML
<meta>
- tagWenn Ihre Anwendung ist strukturell schwer zu beheben ist, dann eine einfache (aber
etwas unprofessionell), so dass Umleitungen ist die Injektion von HTML
<meta>
tag. Eine Umleitung erreicht werden kann, mit:Oder mit einer kurzen Verzögerung:
Führt dies zu nicht-valides HTML, wenn verwertet, vorbei an der
<head>
Abschnitt.Die meisten Browser noch akzeptieren.
JavaScript-redirect
Als alternative eine JavaScript-redirect
kann verwendet werden, für die Seite leitet:
Dies ist zwar oft mehr HTML-konform als die
<meta>
Problemumgehung,es entsteht eine Abhängigkeit von JavaScript-fähigen clients.
Beide Ansätze jedoch akzeptabel fallbacks, wenn echte HTTP-header()
Aufrufe schlagen fehl. Im Idealfall würde Sie immer verbinden Sie dies mit einem Benutzer-freundliche Nachricht und
klickbarer link als letzten Ausweg. (Was zum Beispiel ist, was die http_redirect()
PECL Erweiterung funktioniert.)
Warum
setcookie()
undsession_start()
sind auch betroffenBeide
setcookie()
undsession_start()
müssen, senden Sie eineSet-Cookie:
HTTP-header.Die gleichen Bedingungen gelten daher, und ähnliche Fehlermeldungen generiert werden
für die vorzeitige Ausgabe von Situationen.
(Natürlich sind Sie zudem beeinflusst von cookies deaktiviert im browser
oder auch proxy-Probleme. Die session-Funktionalität offensichtlich hängt auch davon ab, frei
Speicherplatz und andere php.ini-Einstellungen, etc.)
Weiterführende links
Es deckt HTTP im detail und gibt einige Richtlinien für das umschreiben von scripts.
Das entfernen des schließen
?>
vom Ende einer php-Dateien ist in der Regel eine gute Praxis, die hilft bei der Minimierung dieser Fehler als gut. Unerwünschte Leerzeichen wird nicht auftreten, am Ende der Dateien, und Sie werden immer noch in der Lage sein, um add-Header auf die Antwort später. Es ist auch praktisch, wenn Sie output buffering benutzen, und würde es nicht gerne sehen, Hinzugefügt, unerwünschte Leerzeichen am Ende der Teile erzeugt durch den enthaltenen Dateien.Seltsame Sache, ich zog meine Datei aus dem cPanel-Linux-Hosting, VPS. Bevor es richtig funktioniert, aber hier zeigte diesen Fehler.(Ich hatte html-code vor dem header). Warum?
Haben Sie Lesen Sie den Teil über "klappte es Aber auf dem anderen server!?"
Die UTF8-BOM vermutlich (fix,) / kein output-buffering aktiviert (verlassen Sie sich nicht auf das).
InformationsquelleAutor mario
Diese Fehlermeldung wird ausgelöst, wenn alles gesendet wird, bevor Sie Sie senden HTTP-Header (mit
setcookie
oderheader
). Häufige Gründe für die Ausgabe von etwas, bevor die HTTP-Header sind:Versehentliche Leerzeichen, oft am Anfang oder Ende der Dateien, wie diese:
um dies Zu vermeiden, einfach weglassen, das schließen
?>
- es ist nicht erforderlich, sowieso.3F 3C
. Sie können sicher entfernen Sie die StücklisteEF BB BF
von der start-Dateien.echo
,printf
,readfile
,passthru
code vor<?
etc.display_errors
php.ini-Eigenschaft gesetzt ist. Statt Absturz auf einen Programmierer Fehler, php leise behebt die Fehler und gibt eine Warnung aus. Während Sie ändern können, diedisplay_errors
oder error_reporting - Konfigurationen, sollten Sie lieber das problem zu beheben.Häufige Gründe sind Zugriffe auf nicht definierte Elemente eines Arrays (wie
$_POST['input']
ohne Verwendungempty
oderisset
, um zu testen, ob die Eingabe eingestellt ist) oder verwenden eine nicht definierte Konstante anstatt einem string-literal (wie in$_POST[input]
beachten Sie das fehlende Anführungszeichen).Einschalten die Ausgabe-Pufferung sollte das problem Weg; alle output nach dem Aufruf von
ob_start
im Speicher gepuffert, bis Sie die Freigabe der Puffer, z.B. mitob_end_flush
.Jedoch, während output-buffering vermeidet die Probleme, sollten Sie wirklich feststellen können, warum Ihre Anwendung gibt einen HTTP-body, bevor der HTTP-header. Das wäre wie wenn man einen Anruf und besprechen den Tag und das Wetter, bevor Sie dem Anrufer mitteilt, dass er die falsche Nummer.
InformationsquelleAutor phihag
Ich habe diesen Fehler viele Male zuvor.und ich bin sicher, dass alle PHP-Programmierer mindestens einmal kam dieser Fehler.
Beheben Sie diese Fehler, die Sie lösen können, verwenden Sie die Lösung wie pro Ihre problem-Ebene:
Mögliche Lösung 1:
Haben Sie möglicherweise leer Räumen vor oder nach (am Ende der Datei nach dem ?> ) d.h.
Meisten der Zeit, dies sollte Ihr problem lösen.Tun überprüfen Sie alle zugehörigen Dateien mit der Datei, die Sie
require
.Hinweis: Manchmal-EDITOR(IDE) wie gedit(ein Standard-linux-editor), fügen Sie eine leere Zeile auf speichern speichern Sie die Datei.Das sollte nicht passieren. Wenn Sie mit linux arbeiten. Sie können den VI-editor zum entfernen von Leerzeichen/- Zeilen, nach ?> am Ende der Seite.
Falls dies nicht der Fall ist,dann können Sie ob_start für die Ausgabe-Pufferung wie unten:
Möglich Lösung 2:
Dies wird wiederum die Ausgabe-Pufferung auf und dem Header wird erstellt, nachdem die Seite gepuffert ist.
ob_start()
nur versteckt das problem nicht lösen dieses problem.Wenn ich nicht die Verwendung von
ob_start()
, dann was sollte ich tun um dieses problem zu lösen:Headers already sent
wenn Sie immer die Fehler, gerade weil der editor Sie verwenden, sollten Sie die Geige mit den Einstellungen, um es zu stoppen, die das problem verursacht, oder switch-Editoren. Wenn Sie bekommen die Fehler aus einem anderen Grund, sollten Sie Lesen Sie die Antworten in dieser Frage (speziell die akzeptierte Antwort), um herauszufinden, was das problem eigentlich ist, und das es zu lösen.
ob_start()
nicht "hide" das problem, es löst das problem.Ich hatte so ein problem wenn ich lade meine Dateien auf den server, der unterstützt sogar PHP5.3 Verwenden Sie server mit PHP 5.6 oder mehr
InformationsquelleAutor Manish Shrivastava
Anstelle der unter Zeile
schreiben
oder
Er werde auf jeden Fall dein problem lösen.
Ich Stand vor dem gleichen problem, aber ich gelöst durch schreiben der header-Position in der oben beschriebenen Weise.
InformationsquelleAutor Ipsita Rout
Tun Sie
vor der Einstellung der cookies, was nicht erlaubt ist. Sie können nicht senden Sie keine Ausgabe vor dem Header, nicht einmal eine leere Zeile.
InformationsquelleAutor Seth Carnegie
Es ist wegen dieser Zeile:
Sollten Sie nicht print/echo alles, was vor dem senden der Header.
InformationsquelleAutor Sarfraz
COMMON PROBLEME SIND:
(kopiert aus: Quelle)
====================
1) es sollte keine Ausgabe (d.h.
echo..
oder HTML-codes) vor demheader(.......);
Befehl.2) entfernen white-space(oder newline) vor
<?php
und nach?>
tags.3) GOLDENE REGEL! - Prüfung, ob die php-Datei (und auch, wenn Sie
include
andere Dateien) haben UTF8 ohne BOM Kodierung (und nicht nur UTF-8). Der problem ist, ist in vielen Fällen (da UTF8 codierte Datei hat etwas besonderes Zeichen in den Anfang der php-Datei, die Ihren text-editor nicht)!!!!!!!!!!!4) Nach
header(...);
müssen Sieexit;
5) verwenden Sie immer die 301 oder 302 Referenz:
6) Schalten Sie die Fehlerberichterstattung und den Fehler zu finden. Ihre Fehler kann verursacht werden durch eine Funktion, die nicht funktioniert. Wenn Sie Fehler-reporting, sollten Sie immer top-fix-die meisten Fehler ersten. Es könnte z.B. sein, "Warnung: date_default_timezone_get(): Es ist nicht sicher, verlassen Sie sich auf die system-Zeitzone-Einstellungen." - dann weiter unten können Sie sehen "- Header nicht gesendet" angezeigt. Nach Festsetzung der oberen (1.) Fehler, re-load auf Ihrer Seite. Wenn Sie immer noch Fehler, dann wieder ein Update der top-die meisten Fehler.
7) Wenn keine der oben genannten hilft, verwenden Sie JAVSCRIPT-Umleitung(allerdings stark nicht-empfohlene Methode), kann die Letzte chance in benutzerdefinierten Fällen...:
301
oder302
wichtig?InformationsquelleAutor
Einen einfachen Tipp: Ein einfacher Raum (oder unsichtbar speziellen char), die in Ihrem Skript, direkt vor der ersten
<?php
tag, die das verursachen kann !Vor allem, wenn Sie in einem team arbeiten, und jemand mit einer "schwachen" - IDE-oder Durcheinander gebracht hat um in den Dateien mit seltsamen text-Editoren.
Habe ich gesehen, wie diese Dinge 😉
InformationsquelleAutor Sliq
Andere schlechte Praxis " kann aufgerufen werden, dieses problem ist nicht angegeben, doch.
Sehen dieses code-snippet:
Dinge sind okay,nicht wahr?
Was wäre wenn "a_important_file.php" ist dieser:
Wird dies nicht funktionieren? Warum?Denn schon wird eine neue Zeile generiert.
Nun,wenn dies ist nicht ein häufiges Szenario, was passiert, wenn Sie mit einem MVC-framework, welches es lädt ein viele Datei vor der übergabe an Ihre controller? Dies ist nicht ein ungewöhnliches Szenario. Werden sich darauf vorbereiten.
Vom PSR-2 2.2 :
Unix LF (linefeed) line ending
.single blank line
.omitted
von Dateien mitonly php
Glauben Sie mir , folgenden thse-standards können Sie sparen eine Hölle viele Stunden aus Ihrem Leben 🙂
?>
tag in jeder Datei in jedem Fall irgendeiner WeiseKann ich nicht reproduzieren, dies in einer Windows-Umgebung da es funktioniert mit jeder Kombination (hinzufügen von schließenden tags, Leerzeichen, enter Taste, etc). Es scheint, dass dieses Problem geschieht meist in Linux-Umgebungen.
Es sollte reproduzierbar sein. Kannst du den code, den Sie experimentierten, die in eine Zusammenfassung oder ähnliches?
Ich bin auf Windows 7, mit den neuesten Xampp installiert. Ich denke, dieser Fehler ist im Zusammenhang mit versteckten Zeichen für Ende der Zeile. Meine WordPress' shortcodes.php war die das Problem verursacht. Ich zu dieser Datei Hinzugefügt eine einfache Funktion und es begann zu Feuer "headers sent" - Fehler. Ich habe verglichen meine shortcodes.php mit wordpress", und es war ok, außer die
CR LF
(typisch Windows end of line). Ich lösen, indem Sie die original-Datei aus dem WordPress repo hatLF
(Linux-end-of-line) stattCR LF
und ich zog auch meine Funktion Themas functions.php. Basiert auf: bit.ly/1Gh6mzNbeachten Sie, dass immer noch ich kann nicht reproduzieren, was heißt es in dieser Antwort. Die Antwort ist völlig in Ordnung für die Linux-Umgebung. Die ich getestet habe, unter anderem eine leere zwischen
?>
<?php
, entfernen und hinzufügen von einzelnen leeren Zeile, Hinzugefügt und weggelassen werden End-tag?>
. In Windows+ Xampp alle diese Kombinationen funktionieren. Komisch...InformationsquelleAutor MD. Sahib Bin Mahboob
Manchmal, wenn die dev-Prozess hat beide WIN-Workstations und LINUX-Systemen (hosting) und den code, den Sie nicht sehen, keine Ausgabe, bevor die zugehörige Zeile, es könnte die Formatierung der Datei und die mangelnde Unix nur LF (linefeed)
Zeile endend.
Dem, was wir gewöhnlich tun, um schnell dieses Problem zu lösen, ist, die Datei umbenennen und auf dem LINUX-system erstellen Sie eine neue Datei anstelle der umbenannten ein, und kopieren Sie dann den Inhalt in das. Viele Male diese das Problem lösen, da einige der Dateien, die erstellt wurden, in WIN einmal verschoben, um das hosting dieses Problem verursachen.
Dieser fix ist eine einfache Lösung für Websites verwalten von FTP-und manchmal sparen können unsere neuen team-Mitglieder einige Zeit.
InformationsquelleAutor
In der Regel dieser Fehler auftreten, wenn wir senden header nach dem echo oder Druck. Wenn diese Fehler auftreten, die auf eine bestimmte Seite stellen Sie dann sicher, dass die Seite nicht echo nichts vor dem Aufruf zu
start_session()
.Beispiel für Unvorhersehbare Fehler:
Noch ein Beispiel:
Fazit: nicht die Ausgabe aller Zeichen vor dem Aufruf
session_start()
oderheader()
Funktionen nicht einmal ein Leerzeichen oder eine neue ZeileInformationsquelleAutor