phpbar.de logo

Mailinglisten-Archive

[php] Fehlerausgabe

[php] Fehlerausgabe

Friedhelm Betz php_(at)_phpcenter.de
Thu, 29 Nov 2001 11:50:15 +0100


Hallo Sandro,

> Ich habe aufm Server die Variable "display_errors" im php.ini auf "off"
> gestellt, damit die Besucher meiner Site keine allfälligen parse errors,
> mysql errors usw. zu sehen bekommen. Während der Entwicklung der Seiten
> setze ich die Zeile "php_flag display_errors On" ins htaccess. Funktioniert
> soweit ganz gut.

Ist die Seite die du entwickelst, gleichzeitig online?

> Nun möchte ich dem User bei einem php-Fehler aber nicht nur eine leere Seite
> vor die Nase halten, sondern eine Fehlermeldung (Seite) ausgeben. Geht das
> irgendwie über die Konfigurationsdateien (Standard error include wenn
> display_errors=off) oder muss ich nun in jede Page ein set_error_handler
> setzen?

Kommt auf den Art des Fehlers an und die Möglichkeiten diese zu
behandeln. Aber wenn Du set_error_handler kennst, kennst Du auch die
entprechenden Stellen im PHP-Handbuch. das ist das besser beschrieben
als ich das hier kann....:-)

Falls Du jedoch Fehler zur Laufzeit behandeln möchtest (keine
Parse-Fehler):
alle PHP Funktionen liefern eine Rückgabe, Wert, String, true
false....
Die prüfst Du ab und wenn der Rückgabewert nicht dem Wert entspricht
den du erwartest, gibst Du eine entsprechende Fehlermeldung aus.
etwa so: $link= mysql_connect("host","user","pass");
         if (!link){ echo "Fehlermeldung);
oder besser mit die() oder exit(), wenn die weitere Ausführung der
nachfolgenden Statements keinen Sinn macht:
$link= mysql_connect("host","user","pass")
 or exit("Deine Fehlermeldung die Leute zu sehen bekommen");

Falls Du mit set_error_handler etc. arbeiten möchtest, würde ich das
in auto_prepend_file in der php.ini festlegen und in dieser Datei
die Fehlerbehandlung definieren, oder automatisch eine entprechende
Datei includen lassen.

Gruessse
 Friedhelm                           


php::bar PHP Wiki   -   Listenarchive