gero: MySQL Abfrage ob Eintrag älter als... Falsch

Beitrag lesen

Hallo ,

ich versuche eine Abfrage zu "basteln", mit der ich rausfinden kann, ob ein bestimmter(!) Eintrag älter als 1 Stunde ist. Wenn das so ist dann ist gut so, wenn nicht, dann eben nicht ;)

Dazu steht mir in der DB ein Timestamp-Feld zu Verfügung. Probiert habe ich meine Abrage mit Date_SUB(), aber irgendwie funktioniert das nicht ganz so wie ich "gehofft" habe. Ich habe das Gefühl, das die Einschränkung des Datums nicht oder nur teilweise beachtet wird. Manchmal gehts, manchmal nicht, Leider habe ich noch nicht herausgefunden wann und warum ;)

So habe ich das versucht:

$pruefung2 = 'SELECT * FROM voteWHEREpageid= \''.$page.'\'  ANDname= \''.$name.'\' ANDip= \''.$ip.'\' ANDdatum BETWEEN SYSDATE() AND DATE_SUB(SYSDATE(), INTERVAL 1 DAY) LIMIT 1 ';

Wichtig ist eben, das alle Kriterien übereinstimmen (pageid, name , ip) und Ziel des Ganzen ist es, das nur jede Stunde einmal pro IP ein Vote abgegeben werden kann.

Prüfen tu ich das dann so:

$ergebnis = mysql_query($pruefung2);  
$row = mysql_fetch_object($ergebnis);  
if ($row->ip == $ip)  
  {  
//Eintrag ist jünger als eine Stunde  
  echo $row->ip;  
  echo "<br />Eintrag verboten";  
  }  
 else  
 {  
  
//Eintrag ist älter als eine Stunde  
 echo "Eintrag bereits vorhanden...Update wird vorgenommen<br />";  
 }  
echo mysql_error();  
echo mysql_errno();

Was habe ich falsch gemacht?