dedlfix: Debugging-Hilfe gesucht

Beitrag lesen

Hi!

Nein, ich connecte und wähle die db so:

$db=mysql_connect($dbserver,$dbuser,$dbpasswd);
mysql_select_db($dbname,$db);

Das heißt also, du versuchst zu verbinden, interessierst dich aber nicht dafür, ob es geklappt hat oder nicht.

und ich habe tatsächlich einie Male
mysql_error($db)
verbaut.

Und nun steht in $db keine Ressourcenkennung sondern ein false drin. Kein Wunder, dass mysql_error() das nicht mag. Als erste Maßnahme wäre das $db aus dem mysql_error() zu entfernen, dann kann zumindest mysql_error() statt sich über falsche Parameter aufzuregen was zur eigentlichen Ursache sagen.

Und dann wäre ein Umbau des gesamten Script notwendig, so dass Fehlerzustände erkannt werden können und nicht einfach weitergemacht wäre, als ob immer die Sonne schiene.

if ($db = mysql_connect(...)) {
  Mach_das_was_mit_der_Verbindung_gemacht_werden_soll();
} else {
  Alternativprogramm_im_Fehlerfall();
}

Auch mysql_select_db() und mysql_query können auf diese Weise Fehler melden. Auch hier muss also wieder vor Folgeaktionen entschieden werden, ob der Gut-Fall oder der Fehler-Fall vorliegt.

Lo!