Skriptfehler (PHP & MySQL)
Dr. Lecter
- php
Hi :)
Folgender PHP-Code:
mysql_connect($hostname,$username,$password) or die("Impossible to access database.");
mysql_select_db($dbName) or die("Impossible to select database.");
$query="SELECT * FROM $tableName ORDER BY date, time";
$res=mysql_query($query);
$number=mysql_numrows($res);
ergab die Fehlermeldung "Warning: Supplied argument is not a valid MySQL result resource in (letzte kopierte Zeile)". Was könnte da falsch laufen? Ich habe die Zeilen aus einem anderen, funktionierenden Skript kopiert, nur $query ist geändert, der Code sollte also eigentlich korrekt sein...
Gruss
Dr. Lecter
Hi :)
Folgender PHP-Code:
mysql_connect($hostname,$username,$password) or die("Impossible to access database.");
mysql_select_db($dbName) or die("Impossible to select database.");
$query="SELECT * FROM $tableName ORDER BY date, time";
$res=mysql_query($query);
$number=mysql_numrows($res);
müsste das nicht $number=mysql_num_rows($res); heissen? (oder geht das auch so?)
ergab die Fehlermeldung "Warning: Supplied argument is not a valid MySQL result resource in (letzte kopierte Zeile)". Was könnte da falsch laufen? Ich habe die Zeilen aus einem anderen, funktionierenden Skript kopiert, nur $query ist geändert, der Code sollte also eigentlich korrekt sein...
Der Fehler sagt dir, das das Ergebnis deines SQL-Befehls kein gültiges MySQL-Ergebnis ist.
Am besten checkst du erstmal mit print mysql_error(); welches Problem MySQL mit deiner SQL-Anweisung hat.
gruss
Thorsten
müsste das nicht $number=mysql_num_rows($res); heissen? (oder geht das auch so?)
Das geht auch so :)
Der Fehler sagt dir, das das Ergebnis deines SQL-Befehls kein gültiges MySQL-Ergebnis ist.
Am besten checkst du erstmal mit print mysql_error(); welches Problem MySQL mit deiner SQL-Anweisung hat.
Danke, das hat geholfen... MySQL hat mir jetzt nämlich mitgeteilt, dass es schon bei der Erstellung des Tables einen Fehler gegeben hat %-), und den habe ich jetzt korrigiert.
$query="SELECT * FROM $tableName ORDER BY date, time";
$res=mysql_query($query);
$number=mysql_numrows($res);
$query='SELECT * '
.'FROM '.$tableName.' '
.'ORDER BY date,time';
echo $query; /* [1] */
[...]
$number=mysql_numrows($res);
^^^ mysql_num_rows()
[1] Ich trau mich wetten, $tableName ist nicht definiert, leer, wird nicht übergeben (register_globals=off), ...