Supportnet / Forum / Skripte(PHP,ASP,Perl...)
Fehlermeldung, warum?
Frage
Hi Leute,
Ich übergebe mit einem Pulldown-Menü 2 Parameter. "art" und "titel". Beide werden auf der 2. Seite abgearbeitet.
Dort erhalte ich aber folgende Fehlermeldung:
[b]Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in
cover.php on line 18[/b]
Hier mal mein Code:
if ($art == 'ruck')
{
$result_ruck = mysql_query("SELECT * FROM ruck WHERE titel = $titel order by nr");
?>
<table border="0"width=100%>
<tr>
<td><center><span style='font-family:"Arial Black";mso-bidi-font-family:
Arial'><font size=7><font color="#00ffff">Rückenbilder</font></font></font></h1></center></td>
</tr><tr><td>a</td></tr><tr><td><center><font size=5><font color="#00ff00"><?php echo $titel ?></font></font></center></td></tr></table><br><br><br>
<Table>
<tr>
<?php
while ($row_ruck = mysql_fetch_array ($result_ruck))
{
$titel = $row_ruck["titel"];
$id = $row_ruck["id"];
$rbild = $row_ruck["rbild"];
$datei = $row_ruck["datei"];
$nr = $row_ruck["nr"];
?>
<td><img src="../bilder/<?php echo $datei ?>" width="30"></td>
<?php
}
?>
</tr>
</table>
<?php
}
Zeile 18 ist die [b]while[/b] Zeile.
Wo liegt hier der Fehler?
Vielen Dank fürs Lesen.
Yessi
Antwort 1 von thomasn1975
$result_ruck = mysql_query("SELECT * FROM ruck WHERE titel = $titel order by nr");
ändern in
$result_ruck = mysql_query("SELECT * FROM ruck WHERE titel = \"$titel\" order by nr");
ändern in
$result_ruck = mysql_query("SELECT * FROM ruck WHERE titel = \"$titel\" order by nr");
Antwort 2 von helferlein
was für ein shice, wo hasten das her?
$result_ruck = mysql_query("SELECT * FROM `ruck` WHERE `titel` = '$titel' ORDER BY `nr`");
ist die bilder buch variante.
$result_ruck = mysql_query("SELECT * FROM `ruck` WHERE `titel` = '$titel' ORDER BY `nr`");
ist die bilder buch variante.
Antwort 3 von YesAmerika
Hi,
Danke für die Antworten. thomasn1975 seine Lösung funktioniert.
Yessi
Danke für die Antworten. thomasn1975 seine Lösung funktioniert.
Yessi
Antwort 4 von Helferlein
so verbreitet sich also unsaubere sql-syntax....
Antwort 5 von thomasn1975
@Helferlein:
MySQL-Doku Sektion 10.2:
Also mal alles nicht so eng sehen.
MySQL-Doku Sektion 10.2:
Zitat:
An identifier may be quoted or unquoted. If an identifier is a reserved word or contains special characters, you must quote it whenever you refer to it.
An identifier may be quoted or unquoted. If an identifier is a reserved word or contains special characters, you must quote it whenever you refer to it.
Also mal alles nicht so eng sehen.
Antwort 6 von thomasn1975
@Helferlein:
MySQL-Doku Sektion 10.2:
Also mal alles nicht so eng sehen.
MySQL-Doku Sektion 10.2:
Zitat:
An identifier may be quoted or unquoted. If an identifier is a reserved word or contains special characters, you must quote it whenever you refer to it.
An identifier may be quoted or unquoted. If an identifier is a reserved word or contains special characters, you must quote it whenever you refer to it.
Also mal alles nicht so eng sehen.
Antwort 7 von oh mann
dann zähl mir mal bitte die reservierten wörter auf...es passieres Z viele fehler, weil die leuts die spaltennamen nicht in backticks setzen...außerdem meinte ich eher deine \"$var\"
das ist hässlich und unsauber...
das ist hässlich und unsauber...
Antwort 8 von thomasn1975
Sektion 10.1.1:
Hässlich lasse ich gelten ;).
Aber Backticks sind mir einfach zu viel Tipparbeit. Es funktioniert und ist erlaubt.
Normalerweise bin ich gar nicht so ein Klugschei*er :)
Zitat:
A string is a sequence of characters, surrounded by either single quote (`'') or double quote.
A string is a sequence of characters, surrounded by either single quote (`'') or double quote.
Hässlich lasse ich gelten ;).
Aber Backticks sind mir einfach zu viel Tipparbeit. Es funktioniert und ist erlaubt.
Normalerweise bin ich gar nicht so ein Klugschei*er :)

