mysql и 30 дней

Я работаю над сайтом, который обрабатывает бесплатные подписки, и теперь мне понравится, как отменить подписки после 30 дней бездействия, я знаю, что это нужно делать с помощью cron-заданий, но я не знаю, как считать 30 после в последний раз, когда пользователь вошел в систему?

SELECT user_id FROM users WHERE DATE_SUB(CURDATE(),INTERVAL 30 DAY) > last_logged_in_date 

Вам нужно использовать функцию mysql DATE_ADD

SELECT DATE_ADD('YOUR DATE', INTERVAL 30 day)

См. Руководство по mysql для получения дополнительной информации http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-add .

Вы можете сделать это в 1 инструкции UPDATE

 UPDATE yourTable SET active = 0 WHERE validity_date < CURRENT_DATE 

И когда они подписываются, вы получаете платеж

 UPDATE yourTable SET active = 1, validity_date = DATE_ADD(CURRENT_DATE, INTERVAL 1 MONTH) WHERE id = 'somekind of id' 

И если кто-то не хочет использовать cron и с использованием MySQL 5.1 или выше, вы можете использовать событие. http://dev.mysql.com/doc/refman/5.1/en/create-event.html

Вы можете сделать запрос, который поможет вам. Фактически, в документации MySQL есть ваш пример. Сделайте быстрый поиск «30 дней» на этой странице: http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html .