Vergiss das mit dem SQL-Statement, das sollte nur die Einträge anzeigen, die von der einen Methode erfasst werden, von der anderen aber nicht. Also einfach nur ein Statement zur Fehleranalyse.
Lege erstmal deine Testdaten an.
Dann schaust du erst einmal mit einem SELECT, ob die WHERE-Klausel die richtigen Zeilen erfasst. Hier hab ich die MYSQL-Funktion FROM_UNIXTIME verwendet um deinen INT in ein DATETIME umzuwandeln. Ich gehe davon aus, dass in der Spalte timestamp die Sekunden angegeben sind (und nicht etwa Millisekunden).
|
SQL Code
|
1
|
SELECT * FROM `shoutbox` WHERE DATE_SUB(CURDATE(), INTERVAL 30 DAY) >= FROM_UNIXTIME(`timestamp`)
|
Wenn das stimmt, kannst du es auch mit DELETE machen.
|
SQL Code
|
1
|
DELETE FROM `shoutbox` WHERE DATE_SUB(CURDATE(), INTERVAL 30 DAY) >= FROM_UNIXTIME(`timestamp`)
|