dedlfix: Fehler bei Datenbank ausgabe

Beitrag lesen

Hi!

Ich habe hier die Überprüfung des Captcha und die Überprüfung der Pflichtfelder. Dies funktioniert auch alles, allerdings bekomm ich nur die Fehlermeldung angezeigt, wenn der Captcha falsch oder nicht eingegeben wurde. Bei nicht ausfüllen z.B. von Name wird eine weiße Seite angezeigt.

Du verwendest eine Menge Variablen, deren Herkunft in dem gezeigten Code nicht ersichtlich ist. Das nicht mehr aktuelle Feature register_globals verleitet gern zu solchem Vorgehen. Das error_reporting auf E_ALL (und display_errors auf on) zu stellen, hilft unter anderem nicht vorhandene Variablen aufzuspüren.
Du verwendest die veraltete Funktion mysql_escape_string(). Verwende stattdessen mysql_real_escape_string().
Du betreibst keinerlei Fehlerauswertung. Datenbanken neigen dazu, unter bestimmten Umständen Fehler zu signalisieren. Werte die Funktionsergebnisse aus anstatt nur die Gutvariante zu betrachten.

Schau genau nach und überlege dir, was in den Alternativfällen passiert. Das äußere if beispielsweise hat ein else, das innere nicht. Wenn du nicht weißt, wie sich dein Programm tatsächlich verhält, bau ein paar echo-Ausgaben mit eindeutigem Text ein, so dass du sehen kannst, an welchen Stellen der Programmfluss vorbeikommt.

Lo!