Smudly Posted July 22, 2010 Share Posted July 22, 2010 I'm creating a daily drawing system. The users have a chance to win every day. Once a user wins, they will not be able to win again for 30 days. I need to select all rows inside my mysql database that have dates over 30 days ago, or are still set as default (0000-00-00). How can I do something like this? I've tried a few different ways but none seem to work. Once these rows are selected, it randomly chooses 3 winners, and sets their new dates to the current date. Current code: <?php include_once('../inc/connect.php'); $date = date("Y-m-d"); $drawquery = mysql_query("SELECT id FROM users ORDER BY rand() LIMIT 1"); $row = mysql_fetch_assoc($drawquery); $wondaily = $row['wondaily']; $userid = $row['id']; echo $userid; ?> Quote Link to comment https://forums.phpfreaks.com/topic/208493-finding-rows-where-date-was-over-30-days-ago-or-was-not-set/ Share on other sites More sharing options...
AbraCadaver Posted July 22, 2010 Share Posted July 22, 2010 Haven't tested, but maybe (or similar): $drawquery = mysql_query("SELECT id FROM users ORDER BY rand() WHERE (`date_column` INTERVAL + 30 DAYS) > CURDATE() AND DATE(`date_column`) <> '0000-00-00' LIMIT 1"); Quote Link to comment https://forums.phpfreaks.com/topic/208493-finding-rows-where-date-was-over-30-days-ago-or-was-not-set/#findComment-1089390 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.