PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme mit MySQL SELECT Query


armybean
02.06.2007, 10:37:31
Hallo, ich habe einen Counter programmiert. Jetzt will ich die Zeile auswählen, wo die Zeit am größten ist, das heißt, wann der Besucher (anhand der IP gemessen) das letzte mal da war.
In der Tabelle gibt es drei Spalten (ID, IP, time). Mit folgendem Query will ich das eigentlich abfragen:
$result2 = mysql_query("SELECT counter.ID, MAX(counter.time) AS last FROM counter WHERE counter.IP='{$ip}'");
Will ich dann mit mysql_num_rows() überprüfen, ob es Zeilen gibt:
if (mysql_num_rows($result2)) {
...
}
Da wird ein Fehler ausgegeben:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in I:\htdocs\...\includes\__counter.inc.php on line 23
Wieso? Was mache ich falsch? Ich brauche die ID aber auf alle Fälle. Wenn ich bloß mit
$result2 = mysql_query("SELECT MAX(counter.time) AS last FROM counter WHERE counter.IP='{$ip}'");
arbeite, funktioniert es. Woran liegt das?

Für eine Antwort wäre ich sehr dankbar!

meikel (†)
02.06.2007, 14:05:34
1. Script korrigieren
$result2 = mysql_query("SELECT counter.ID, MAX(counter.time) AS last FROM counter WHERE counter.IP='{$ip}'")
OR die(mysql_error());

2. MySQL Fehlermeldung hier posten.

armybean
02.06.2007, 20:35:09
Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
Funktioniert die MAX()-Funktion nur mit ner GROUP BY Abfrage?