Работа с датами

rio_dez

Новичок
Работа с датами

Здравствуйте!
Хочу сделать такую штуку:
1. Пользователь зарегистрировался 24.08.2006. Его аккаунт действителен в течение месяца, т.е. 24.09.2006 его аккаунт должен быть удален.
2. За 9 дней до удаления его аккаунта, его каждый день должно высылаться письмо с уведомлением об удалении аккаунта.
Вопрос вот в чем:
Как рассчитать что именно 9 дней остается до закрытия аккаунта...
Даже мыслей толковых нет... :confused:
Надеюсь на Вашу помощь!
 

MadGreen

meninweb
или кроном проверять срок давности, или в скрипте постоянно проверять...
но если в скрипте то при отсутствии посетителей сайта уведомление не уйдет или уйдет когда останется уже меньше 9 дней
 

Фанат

oncle terrible
Команда форума
вычесть из даты закрытия 9 дней и сравнить с текущей.
 

rio_dez

Новичок
Ну кроном понятное дело запускать скрипт.
Только как вычесть 9 дней например из 24.09.2006...
Вот в этом вся проблема наверное и есть...
 

rio_dez

Новичок
хм... посмотрел эти фукнции.
У меня есть дата 24.09.2006.
Я получаю с помощь фунцкии date число 15.08.2006
У как мне сравнить есть ли 9 дней до 24.09.2006
Помоему, здесь функция mktime не подойдет...
 

rio_dez

Новичок
да, посмотрел, но для себя ничего не почерпнул...
Если что-то пропустил, приведите пример здесь, пожалуйста.
 

rio_dez

Новичок
Написал я вот такую штуку:
$mes = '09';
$den = '24';
$god = '2006';
$a = mktime(0,0,0,$mes,$den,$god) - 777600;
echo $a;
при таком написании выводит: 1158264000
при написании mktime(0,0,0,09,24,2006) - 777600
выводит: 1134594000
Цифры вродебы одни и теже, а результат разный.
Да и вообще, что это за числа которые выводятся...

Да, данные о пользователях, в т.ч. и дата истечение срока аккаунта тоже.
 

Фанат

oncle terrible
Команда форума
я правильно понимаю, что
данные о пользователях находятся в базе данных,
и ты собираешься доставать по очереди все аккаунты, и сравнивать в пхп скрипте их дату с нужной?
 

rio_dez

Новичок
Фанат
да, все именно так!
Вытаскиваю аккаунт, сравниваю дату которая сейчас и дату с которой нужно аккаунт удалять и если до этой даты остается 9 дней и менее, то отсылаю письмо с увеломлением...
Только как вот дело реализовать?
 

Фанат

oncle terrible
Команда форума
а тебе не приходило в голову, что база данных не очень похожа на коробку со счётными палочками для первого класса?
и что она может несколько больше, чем достал-положил?

я тебе больше скажу. База данных как раз и нужна не столько для хранения, сколько для манипуляции с данными.

в частности, у неё можно запросить не все аккаунты, какие есть, а только те, которым нужно отослать письма.

какая у тебя база данных и в каком формате записана дата?
 

rio_dez

Новичок
Фанат
Но ведь рано или поздно на все аккаунты придется письма отсылать.
База MySQL
Даты хранятся в формате дд.мм.гг
 

donflash

Вареник клуба
Автор оригинала: rio_dez
Но ведь рано или поздно на все аккаунты придется письма отсылать.
База MySQL
Даты хранятся в формате дд.мм.гг
Это безусловно так, но по частичному методу это будет происходить по мере необходимости, а не всегда полностью... Таким образом снижается нагрузка, да и вообще это гораздо более разумней и правильней...
 

Фанат

oncle terrible
Команда форума
rio_dez
я не очень понял твою глубокую мысль.
НУ И ЧТО, что рано или поздно приётся всем отсылать?
 

rio_dez

Новичок
Фанат
:) Я сам ее до конца не понял...
Подскажи лучше как быть с датой...
 

Фанат

oncle terrible
Команда форума
значит так.
дату хранить в поле date
записи на извещение выбирать запросом.
 

bgm

 
rio_dez
С датой быть очень просто - сразу получать в скрипт из базы список пользователей, которым нужно отослать письма.
 
Сверху