gavin.sibley Posted March 14, 2012 Share Posted March 14, 2012 I am trying to find a way of deleting entries from a database after a certain time, and also when there is another field in the database set to 0. i have got so far with the code (will delete when other field is at 0) but nothing happens when i try to add in the time. my code im trying to use is below mysql_query("DELETE FROM temp_users WHERE book_stage='0' and WHERE time() > [creation+60]"); creation being the name of the field in the database that holds the unix time stamp. i need the entry to be deleted one hour after it was created if the book_stage hasnt been changed to 1 during this hour. many thanks, gavin Quote Link to comment Share on other sites More sharing options...
NomadicJosh Posted March 30, 2012 Share Posted March 30, 2012 I think you want to setup another PHP script and run a cron job. The database table will not update itself without something enacting on it. Quote Link to comment Share on other sites More sharing options...
DavidAM Posted March 30, 2012 Share Posted March 30, 2012 mysql_query("DELETE FROM temp_users WHERE book_stage='0' and WHERE time() > [creation+60]"); A proper query only has the WHERE keyword once. DELETE FROM temp_users WHERE condition_1 AND condition_2 AND condition_3 The book_stage condition looks OK (although if it is an integer field, I would not use quotes around it). For the time condition, you need to use mySql functions, or do the calculation in PHP and insert the value. Using the mySql functions would be the preferred method. CURRENT_TIME > DATE_ADD(creation, INTERVAL 60 MINUTE) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.