yubb.de-Logo
Tutorials
yubb@yubb
yubbService
Inside yubb



Eine Fehlermeldung unterdrücken

PHP-Datei:
1
2
3
<?php
@mysql_query("SELECT * FROM dbname",$open);
?>


Um eine Fehlermeldung zu unterdrücken, muss man der Funktion einfach ein @ -Zeichen voranstellen. Nochmal die Syntax:
@funktion(Parameter);

Bei einem Fehler eine Fehlermeldung ausgeben und das Script beenden

PHP-Datei:
1
2
3
<?php
mysql_query
("SELECT * FROM dbname",$open) or die ("Verbindung zur Datenbank konnte nicht aufgegeben werden.");
?>


Einfach or die("Fehlermeldung"); hinten an die Funktion hängen und das wars schon. Bei einem Fehler wird dann eine Fehlermeldung ausgegeben und das Script wird sofort beendet. Das kann dann nützlich sein, wenn ein MySQL Result gebraucht wird. Sollte es allerdings einen Fehler geben, lohnt es sich nicht, das Script zu Ende laufen zu lassen.

Geschrieben von Christian am 25.04.2005 (11166x gelesen)
weiterempfehlen weiterempfehlen   Druckversion Druckversion   kommentieren kommentieren

Man kann hiermit aber nur die Fehlermeldungen unterdrücken, die Fehler sind immer noch existent.
Und falls später etwas nicht funktioniert, darf man an allen Funktionen das @ nach und nach löschen, um die Fehlerquelle zu finden.

Das @ sollte man nur in Extremfällen einsetzen oder wenn man eh im Anschluss eine Fallunterscheidung in Abhängigkeit des Erfolges macht.
Geschrieben von Phil Marx
error_reporting ist gan gute funktion dafür.
Geschrieben von Neo
Viel einfacher geht's, wenn man am Anfang vom Script
PHP-Datei:
1
2
3
<?php
ini_set
('display_errors''Off');
?>
schreibt. So werden alle Fehlermeldungen unterdrückt, ohne dass man vor jede Funktion ein "@" schreiben muss.
Wenn dann irgendwas nicht funktioniert, muss man die Zeile nur löschen oder kommentieren, und sieht dann wieder alle Fehlermeldungen.
Geschrieben von dasepp
danke dasepp! (auch danke an christian)
Geschrieben von Steven
Viel einfacher ist
Code:

error_reporting ( false );

zu schreiben. Damit wird jegliche Fehlermeldung unterdrückt.
Um Fehler zu suchen sollte man hingegen
Code:

error_reporting ( E_ALL );

verwenden.

MfG Lucas
Geschrieben von Lucas9991
am besten ist wenn man einfach schreibt:

mysql_query("SELECT * FROM dbname",$open) or die (Mysql_error());

weil dann wird der wahre fehler ausgegeben und nicht nur das was flasch ist.. So lässt sich die Fehlerquelle leichter finden...
Geschrieben von Skaninchen
Stimmt was ihr gepostet habt. Das ganze war mehr so gedacht Fehlermeldungen bei Funktionen die öfter mal Fehler liefern zu unterdrücken, oder schönere Fehlermeldungen, die den unerfahrenen User nicht so abschrecken auszugeben.
Geschrieben von Christian