PHP / PHP/MySQL - Fehlermeldungen 1 2

von: Werner Zenk

PHP-Fehlermeldungen und Warnungen

Die Fehlermeldungen des PHP-Interpreters sind allgemein einer der nachfolgenden Kategorien zugeordnet:

Syntaxfehler (Parse Error): Während der syntaktischen Analyse des Skriptes (englisch parsing) wurde ein Fehler im Skript gefunden wie etwa ein fehlendes Semikolon am Ende einer Anweisung oder eine falsch gesetzte Klammer. Der Quellcode entspricht also nicht der erlaubten Grammatik. Bei einem Syntaxfehler bricht der Interpreter die Verarbeitung des Programms ab.

Parse error: syntax error, unexpected ...
Das bedeutet meist das man ein Zeichen (z.B.: Strichpunkt ";") vergessen hat.

Parse error syntax error, unexpected T-STRING ...
Bei solchen Fehlermeldungen sind meistens die Grenzen der Zeichenketten falsch oder gar nicht gesetzt.

Parse error: syntax error, unexpected $end in ...
Ein unerwartetes $end (steht für Ende des Programms), tritt beispielsweise auf, wenn eine (geschweifte) Klammer zu viel oder zu wenig notiert wurde.

Parse error: syntax error, unexpected T_IS_EQUAL, expecting ',' or ')' in ...
Komma-Fehler oder Klammer-Fehler.

Parse error: parser stack overflow in ...
Der Hauptspeicher des Servers ist verbraucht. Haben Sie eine Endlosschleife im Script?

Warnung (Warning): Ein warnender Hinweis des Interpreters, dass er auf etwas Zweifelhaftes gestoßen ist. Dies kann beispielsweise ein Funktionsaufruf mit zu wenigen oder zu vielen Parametern sein. Bei Warnungen wird die Verarbeitung nicht unterbrochen; es kann aber zu falschen Ergebnisses kommen.

Warning: Wrong parameter ... for ...
Entweder werden zu viele Parameter oder falsche Parameter an eine Funktion übergeben.

Warning: Undefined variable
Warnung tritt auf weil eine Variable nicht definiert ist. Kann beim Umstieg von PHP4 auf PHP5 Versionen passieren.

Warning: Invalid argument supplied for foreach() in ...
Die foreach-Schleife erwartet ein Array.

Warning: Failed opening 'file.php' for inclusion
Tritt bei include() oder require() auf (einbinden einer Datei).
Entweder existiert die Datei nicht, oder die Pfadangabe ("../ordner/file.php") wurde falsch geschrieben. Siehe dazu: » 10 Regeln zu Dateinamen

Warning: Cannot add header information - header was already sent in file.php on line ...
Wer zuerst einen Text ausgibt, zum Beispiel den HTML-Kopf oder auch nur ein Leerzeichen an den Browser sendet und danach die header() (oder session_start(), setCookie())-Funktion aufruft erhält diese Fehlermeldung.

Warning: Cannot send session cookie - headers already sent
Tritt bei Sessions auf. Meist liegt es daran das die Session nicht sofort in der ersten Zeile gesendet wurde.

Warning: fopen("datei.txt","r+") - No such file or directory
Die Datei, die das Script öffnen sollte, ist nicht vorhanden.

Warning: ... failed to create stream(~failed to open stream) : Permission denied in ....
Die Datei oder das Verzeichnis besitzt keine Schreib.- und/oder Leserechte.
Siehe dazu: » Chmod - Schreib- und Zugriffsrechte

Warning: mail() has been disabled for security reasons in ...
Eine PHP-Funktion (mail()) wurde (vom Provider) aus Sicherheitsgründen deaktiviert.

Schwerwiegender Fehler (Fatal Error): Ein schwerwiegendes Problem wie etwa eine nicht deklarierte Funktion. Bei einem schwerwiegenden Fehler bricht der Interpreter die Verarbeitung des Programms ab.

Fatal error: Call to unsupported/undefined function ... on line ...
Entweder hat man eine selbst-definierte Funktion falsch geschrieben oder man verwendet eine Funktion die nicht in der PHP Version vorhanden ist.

Fatal error: Maximum execution time exceeded
Gibt an das eine MAX Lauf-Zeit verstrichen ist. Das Script benötigt mehr CPU-Zeit, als ihm von der Serverkonfiguration her erlaubt wird.
Ursachen: Datei zu groß, von einem anderen Prozess belegt oder schlicht gelocked und nicht wieder freigegeben.

Fatal error: Call to unsupported/undefined function ... in (script) on line ...
Sie haben eine Funktion angesprochen, die nicht existiert. Prüfen Sie in der angegebenen Zeile nach allen Ausdrücken mit runden Klammern.

Fatal error: Allowed memory size of **** bytes exhausted (tried to allocate **** bytes) in ...
Die Grenze des maximalen Speicherplatzverbrauch (im Arbeitsspeicher) eines PHP-Scripts wurde überschritten.

Hinweis (Notice): Ein Hinweis oder Ratschlag des Interpreters, der meistens auf einen schlechten Programmierstil hinweist. So etwa wenn Variablen ausgegeben werden ohne ihnen vorher einen Wert zuzuweisen.

Notice: Use of undefined constant ...
Eine unbekannte Konstante wurde aufgerufen. Tritt auch auf wenn in einer Variable die Anfürungszeichen vergessen wurden z.B.: $_POST[name]

Notice: Undefined offset: 2 in ...
Diese Meldung tritt meist im Zusammenhang mit der Verwendung von Arrays auf. Wenn ein Index-basierter Zugriff auf ein Array mit einem Index erfolgt, der größer ist, als die Anzahl der Elemente minus 1, dann erscheint diese Fehlermeldung.

Notice: A non well formed numeric value encountered in ...
Einen nicht wohlgeformten numerischen Wert angetroffen
Der numerische Wert enthält irgendwelche zusätzlichen Zeichen (Zeilenumbruch, Tabulator, etc.).

Missbilligt (Deprecated): Wenn eine PHP-Funktion als missbilligt (deprecated) gekennzeichnet ist. Die PHP-Funktion könnte bei der nächsten PHP Version heraus fliegen!

Deprecated: Function ereg() is deprecated in ...
Die Funktion ereg() ist seit PHP 5.3.0 veraltet. Sich auf diese Funktion zu verlassen ist in keiner Weise empfehlenswert.
Der Ersatz für ereg() ist preg_match - PHP Manual.

Auf der Website php-fehlermeldungen.de finden Sie zahlreiche Fehlermeldungen und Ihre Ursachen dazu aufgelistet.

 

Weitere Fehlerquellen

• Falsche Anwendung einer PHP-Funktion — Schauen Sie beim deutschen
PHP-Manual vorbei.

• Eine bestimmte Browser-Funktionalität wurde abgeschaltet (z.B.: keine
Speicherung von Cookies!)

• Umzug auf einen anderen Webserver — Manche PHP-Programme funktionieren
dann einfach nicht mehr.

• Umstellung auf eine neuere PHP-Version oder Änderungen in der Datei "php.ini".

• Bestimmte PHP-Bibliotheken sind nicht vorhanden. Zum Beispiel die
GD-Grafikbibliothek mit der man Grafiken erzeugen kann.

• Manche PHP-Programme sind auch abhängig von Daten die auf anderen
Webservern liegen (Datenquelle vorhanden?, Ladezeit beachten, Datenformat
wurde geändert, ...).

Leider enteckt man viele Fehler und Schwachstellen erst wenn die Homepage vom Testserver in die freie Wildbahn (ins Web) umgezogen ist.

 

Fazit

Der Entwicklungsprozess ist mit der Fertigstellung von PHP-Programmen längst nicht beendet. So führen Änderungen am Programmcode – sei es nun zu Erweiterungszwecken oder im Zuge einer "Optimierungsmaßnahme" – immer wieder dazu, dass Funktionen oder Methoden, die zuvor ausgetestet wurden und fehlerfrei funktionierten, plötzlich nicht mehr korrekt arbeiten. Auch kommt es vor, dass sich Änderungen, die bei der Beseitigung von Programmfehlern getätigt werden, auf andere Programmteile auswirken und somit an anderen Stellen im Code zu Fehlfunktionen führen.

„Es gibt nur 3 natürliche Feinde des Programmierers: Tageslicht, frische Luft und das unerträgliche Gebrüll der Vögel.” — Fehlermeldungen gehören also nicht dazu

 

Weiter führende Links:
Quelltext mit Format - Es gibt gute Gründe einen Quelltext zu formatieren
PHP mit Sicherheit - Traue niemals den Eingaben des Benutzers
Chmod - Schreib- und Zugriffsrechte
10 Regeln zu Dateinamen
php-fehlermeldungen.de
PHP-Manual

 

    Und Ihre Meinung?
      Sie vermissen auf dieser Seite wichtige Informationen oder haben Hinweise für uns?
Mike:
Sehr hilfreich sind die Fehlermeldungen und die Tips dazu - Vielen Dank!
Hilfe finden Sie im » netzgemein.de - Forum. Auch als „Gast” können Sie dort Fragen stellen!  
 Das könnte Sie interessieren:
Tage bis zum ... (Zähler)  Kleine Suchmaschine - Eine einfache Suchmaschine für die Homepage. Diese Suchmaschine durchsucht das aktuelle Verzeichnis oder Unterverzeichnisse.  Seitentitel der aktuellen Seite auslesen  Spam-Schutz  Passwortschutz (2)  Bilderkatalog - Dieses PHP-Script zeigt Bilder, auf mehreren Seiten aufgeteilt an. Eine Bildbeschreibung kann für jedes Bild hinzugefügt werden.  Rechenquiz - Mit diesem Quiz können Sie Rechenaufgaben lösen.  Mit PHP schreiben und lesen (14) - Formulare mit PHP erstellen und überprüfen (auswerten)   Terminkalender - Ein kleiner Terminkalender der wichtige Ereignisse fest hält. Termine können eingetragen, geändert und wieder gelöscht werden.  …mehr
© 2000-2012 Homepage-Total.de Kontakt - Impressum - Banner