Hallo fastix®,
Oh ja! Ich weiss nicht, wie oft das hier schon vorgebetet wurde. Ich möchte echt mal wissen woher das falsche Beispiel kommt, welches da alle nachprogrammieren.
Es ist stets eine gute Idee, das SQL-Statement einer Variablen zuzuweisen, etwa in der Form:
$strSQL = "select refnr from royal_object where object_id = $value";
Dann hat man die Chance das SQL-Statement auszugeben:
echo $strSQL; # später auskommentieren
Auf die Idee
1. SQL-Anweisung beliebig kompliziert zusammenzustellen
1a. SQL-Anweisung zu Debugzwecken auszugeben
2. SQL-Anweisung dem DBMS zur Verarbeitung zu übergeben
3. Ggf. vorhandene Fehlermeldungen des DBMS auswerten.
bin ich - wie viele andere - selbst gekommen. Ich stehe nach wie vor dazu, dass diese Vorgehensweise, unabhängig von der verwendeten Programmiersprache richtig ist.
Ich darf mich also beim Frager danach erkundigen, wer denn der "geniale" Autor des Werkes sei, der so vielen das so falsch vorgemacht hat?
Ich bin nicht der Frager, aber ich gestatte Dir gerne, Dich bei diesem zu erkundigen. *g*
$qry_refnr = mysql_query($strSQL) or die("Anfrage fehlgeschlagen: " . mysql_error());;
Diese Zeile ist aus
[1] dem Quellcode des OP
[2] aus meiner Zeichenkettenzuweisung
[3] dem PHP-Manual http://www.php.net/manual/de/ref.mysql.php#AEN64021
zusammengestellt.
Bitte beachte die Verwendung des or-Operators, der in der Reihenfolge erst _nach_ dem Zuweisungsoperator kommt - im Gegensatz zum ||-Operator, der in der Reihenfolge _vor_ dem Zuweisungsoperator kommt.
Deswegen bin ich durchaus der Ansicht, dass das Beispiel _weitgehend_ richtig und nützlich zur Behebung von Programmierfehlern ist.
Wie würdest Du vorgehen?
Freundliche Grüsse,
Vinzenz