1UnitedPower: Fehlermeldung Abschalten... nur die eine

Beitrag lesen

Meine Herren!

Wenn der Fehler ein voraussehbarer Laufzeitfehler ist, muss er auch behandeltwerden, da er den weiteren Verlauf des Programmes beeinflusst.

Du hast mein Posting offenbar nicht genau genug gelesen oder du hast es nicht verstanden. Ich wollte nicht diskutieren, ob Fehler- und Ausnahmen überhaupt behandelt werden sollen oder nicht, ich wollte nur darauf, dass man das MIT oder GEGEN die Sicherheitsmechanismen von PHP tun kann. Deine bisherigen Antworten haben mir gezeigt, dass deine Sicht etwas verkürzt und dass du die momentan dagegen arbeitest.

Ich möchte das mal ganz konkret an deinem eigenen Beispiel erläutern:

$con = @mysql_connect(HOST, USER, PASS);

if (!is_resource($con))

  
Die angesprochene deprecated-Warnung wird dadurch nicht behoben sondern unterdrückt! Und lass uns doch mal den Fall analysieren, dass in einer späteren PHP-Version die mysql\_-Funktionen gestrichen werden, was würde dein Code dann machen? Er würde einfach abbrechen. Er würde nicht mal bis zu der if-Verzweigung gelangen. Ein Funktionsaufruf einer nicht vorhanden Funktion ist ein Fatal-Error, der von dem @-Operator nicht unterdrückt werden kann.  
  
Das Problem ist, dass du schon den Fehler (trotz aussagekräftiger Meldung) nicht richtig identifiziert hast. Du hast einen Folgefehler (keine Datenbank-Verbindung) identifiziert!  
  
Dass du auf diese Weise GEGEN und nicht MIT PHP-Fehlerbehandlung arbeitest, zeigt sich sprachlich auch sehr gut in diesem Satz von dir:  
  

> Da Du doch sowieso eine eigene Fehlerbehandlung betreiben solltest, kannst Du die > Ausgabe der Meldung unterdrücken  
  
Und das habe ich versucht richtig zu stellen. Fehlerbehandlung muss sein, aber richtig. So wie deine Aussage da stand, war sie fahrlässig und gefährlich.  

-- 
“All right, then, I'll go to hell.” – Huck Finn