2011-01-15 6 views
1

ich diese Fehlermeldung bekamcodeigniter i erhalten Header gesendet bereits

Ein PHP-Fehler

Severity aufgetreten:

Meldung Warnung: Kann nicht Header ändern Informationen - headers already von (Ausgabe gesendet gestartet um /home/rapcomdk/public_html/system/language/danish/imglib_lang.php:1) Dateiname: helpers/url_helper.php Zeile Nummer: 541

ich weiß nicht, was das Problem

hier ist mein Controller:

http://pastebin.com/EMtcMgsB

und hier ist meine Modelldatei:

http://pastebin.com/iH6xQFGA

Hoffnung jemand kann helfen Sie mir

+0

10 versuchen Sie, die ersten beiden Zeilen Ihrer 'index()' Methode zu kommentieren, wenn das Problem verschwunden ist, dann ist es entweder Ihr Modell oder das '$ this-> uri-> Segment (3)'. – ifaour

+0

es muss die Funktion namens "uploadImg" ich habe alle orter, was es kalt sein – simon

+3

überprüfen Sie bitte kopieren und einfügen imglib_lang.php im Fehler auf Pastebin verwiesen. – jondavidjohn

Antwort

3

Überprüfen Sie und stellen Sie sicher, in system/language/danish/imglib_lang.php, dass Sie keine Leerzeichen vor dem Tag <?php haben und stellen Sie sicher, dass Sie kein abschließendes ?> PHP-Tag in der Datei haben.

+0

es nicht, und es funktioniert gut auf meinem localhost mamp Server, aber auf meinem Host hat es diesen Fehler: S – simon

+0

@Simon ziemlich wahrscheinlich Ihr FTP-Programm fügt einige Leerzeichen in die Datei während des Hochladens, oft passiert dies. Versuchen Sie es mit einem anderen FTP-Programm oder ändern Sie die Einstellungen Ihres FTP-Programms –

3

Wenn Sie die Unicode-Codierung für die Dateien verwenden, müssen Sie neben jondavidjohn's answer sicherstellen, dass von der Datei aus kein byte order mark gestartet wird. Auf einigen Plattformen kann dies die PHP-Verarbeitung beeinträchtigen.

-1

Wenn Sie denken, dass Sie alles richtig konfiguriert haben, produziert Ihre Bibliothek (oder speziell imglib_lang.php) einfach PHP Warnungen oder Hinweise. Wenn Sie Ihre Protokolle von Ihrem Host erhalten können, wäre es hilfreich.

Andernfalls können Sie versuchen, die PHP-Fehlerberichterstattung zu deaktivieren:

error_reporting(0); 

(Sie diese Zeile in Ihre index.php platzieren können)

0

Das Problem ist in system/language/danish/imglib_lang.php, was einige Charakter haben muss vor dem <?php Teil bis es auf dem Server geparst ist. Was passiert ist, dass helpers\url_helper.php versucht zu umleiten (diesen Code verwenden;)

case 'refresh' : header("Refresh:0;url=".$uri); 

aber versagt, weil imglib_lang.php, line 1 hat bereits einige nicht-Kopftext auf die Antwort gesendet. Da Kopfzeilen an erster Stelle stehen, gibt es Ihnen eine Warnung.

Ich frage mich, es funktioniert lokal, aber nicht auf dem Deployment-Server. Es kann sein, dass die Datei nicht sauber übertragen wird oder dass die Server verschiedene Versionen von PHP mit unterschiedlichen Handlings von Zeichensätzen verwenden.

Mehrere Prüfungen;

  1. Seien Sie absolut sicher, dass es keine Stückliste an der Vorderseite von system/language/danish/imglib_lang.php. gibt. Lassen Sie uns wissen, warum Sie sicher sind.Wenn Sie beispielsweise die Datei im Windows-Editor bearbeitet haben, hat sie die Byte-Reihenfolge erreicht. Es kann sehr schwer zu sagen sein, da einige Werkzeuge die Markierung "verschlucken". Stellen Sie außerdem sicher, dass es keine leeren Leerzeichen gibt.
  2. Wenn Sie speichern imglib_lang.php, stellen Sie sicher, dass Sie es in ASCII speichern.
  3. Vergleichen Sie lokale und Remote-Versionen von PHP. Wenn es Unterschiede gibt, aktualisieren Sie Ihre lokale Kopie auf die gleiche wie die Server und testen Sie erneut.
  4. Überprüfen Sie, ob die Datei perfekt übertragen wurde. Wenn Sie die Datei mit FTP erstellen, ändert FTP sie möglicherweise, während sie es überträgt. FTP hat zwei Modi - einen ASCII-Modus und einen BINARY-Modus. Wenn die Dateien als ASCII übertragen werden, kann es zu einem erneuten Überschreiben der Datei kommen. Stellen Sie sicher, dass imglib_lang.php als BINARY übertragen wird, um sicherzustellen, dass die genaue Datei hochgeladen wird.
1

Stellen Sie sicher, dass es keine Fehler im Codeigniter gibt, manchmal können die Fehler durch andere Fehler abgedeckt werden, z. B. ein Fehler führt zu einem anderen.

Verwandte Themen