Sicherheit (PHP, MySQL Inserts & Selects)

Man koennte ja z.B. bei Fehlern mit der Datenbankverbindung oder aehnlichem auch per Header den Status 500 - Internal Server Error schicken. Auch wenn sich das nicht ganz so gut macht. Aber so sollte man zumindest davon ausgehen, dass der User weiss, dass es nicht an ihm liegt.
Bei durch den User hervorgerufenen Problemen ist eine Erklaerung des Problems auf jeden Fall angebracht.

Zusaetzlich koennte man noch checken ob jemand versucht hat irgendwelche Schwachstellen wie SQL-Injection auszunutzen und denjenigen dann etwas veralbern. ;)
 
Die Protokollierung der Fehler ist natürlich auch ganz wichtig. Denn nicht immer werden alle Fehler in der Testphase gefunden. Da ist es schon nützlich, dass aufgetretende Fehler protokolliert werden, sodass sie später noch nachvollziehbar sind.
 
Ok, das klingt alles logisch. Also sollte ich das z.B. einfach nur so handhaben wenn es dann in Betrieb ist:

PHP:
 @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR
        die("Selbstdefinierte Fehlermeldung ...";



Gumbo hat gesagt.:
Die Protokollierung der Fehler ist natürlich auch ganz wichtig. Denn nicht immer werden alle Fehler in der Testphase gefunden. Da ist es schon nützlich, dass aufgetretende Fehler protokolliert werden, sodass sie später noch nachvollziehbar sind.

--> Bei mir geht es nicht über ein Gästebuch oder ein Newsscript hinaus, also keine großen Anwendungen, und nach der Testphase sind da dann auch eigentlich alle Fehler behoben.
Aber man lernt ja nie aus und ich will natürlich irgendwann auch mal größeres schaffen. Wie gehe ich dann an das protokollieren der Fehler am besten ran?- oben fiel der Begriff Logfile?
 
Am besten mithilfe einer Datenbankklassen. Denn damit sind alle Datenbankinteraktionen gekapselt und auftretende Fehler können zentral protokolliert werden. Folgendes wäre dabei möglich:
PHP:
@mysql_connect( … )
	or $this->_reportError(MYSQL_ERROR_FATAL, 'Aufbau der Datenbankverbindung schlug fehl.');
 
Zurück