Hi!
Andererseits sehe ich keinen Hinweis von Dir zu display_errors. Vielleicht reicht ja das Einschalten der Fehleranzeige aus :-)
error_reporting und display_errors helfen bei SQL-Problemen nur bei Folgefehlern. Diese treten zum Beispiel auf, wenn eine mysql_*-Funktion false als Kennzeichen, dass etwas schief gelaufen ist, zurückliefert und nicht die im Gutfall übliche Ressourcenkennung. Übergibt man nun das false an eine nachfolgende mysql_*-Funktion, die aber eine Ressourcenkennung erwartet, dann ergibt das einen PHP-Fehler. Der ist wie gesagt die Folge eines SQL-Fehlers, die Ursache bleibt unaufgedeckt (mysql_error() hilft dafür). Das altbekannte, schnell dahingeschriebene ... or die() bricht jedoch beim false-Fall die weitere Verarbeitung ab, so dass keine weiteren Folgefehler auftreten können, und damit error_reporting und display_errors nun nicht mehr wirken können. Wenn aber schon im Vorfeld ein PHP-Fehler aufgetreten ist, können sie jedoch sehr wohl zu dessen Sichtbarmachung hilfreich sein.
Lo!