Seite 1 von 1

[sql] Onlineliste ausgeben

Verfasst: 28.08.2007 13:16
von Ambience
Hallo, ich habe folgenden Code:

Code: Alles auswählen

$sql = 'SELECT `username`
      FROM ' . USERS_TABLE . '
        WHERE `active_room` = "' . $db->safe($_SESSION['active_room']) . '"
          AND `last_action` > ' . time()-1800;
Und bekomme einen mysql fehle:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-1800' at line 1
Ich hatte eigentlich vor, alle User auszulesen, welche in einem raum sind und innerhalb der letzen 30 minuten online waren... aber ich weiß nicht was daran falsch sein sollte..

Ambience

Verfasst: 28.08.2007 13:29
von S2B
Hmm, den Fehler kann ich ehrlich gesagt nicht nachvollziehen... :-?

Hast du mehrere Queries, in denen du " " zum Einfügen von Strings verwendest? Wenn nicht, versuche es doch mal mit ' ':

Code: Alles auswählen

"WHERE `active_room` = '" . $db->safe($_SESSION['active_room']) . "'

Verfasst: 28.08.2007 19:11
von Pyramide
Lass dir doch einfach mal $sql per echo ausgeben, in 95% der Fälle sticht einem der Fehler dann direkt ins Auge.

Verfasst: 29.08.2007 00:11
von Ambience
der fehler war das ich den raum als string und nicht als zahl übergeben habe.... hmm da muss man auch erst draufkommen.... schon wieder ganzer tag auf fehlersuche draufgegangen...