[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как это победить?
webog
Всем добра!

За помощь готов купить кофэ, чай или какао! rolleyes.gif

Нужно напоминать пользователю каждый день допустим о "Выпей кофЭ".
Напоминать нужно 21 день (может и 30 и 50 дней)
Напомнить 1 раз в день проблем нет, создал БД, крон и вперед.
НО! Если нужно напоминать каждые 3 часа на протяжении 21-го дня и НЕ в ночное время, то тут уже загвоздка. blink.gif
Как это хранить в БД? (MySQL, PHP)

Буду благодарен, тем кто откликнется smile.gif
Zzepish
в таблице с задачей добавить поле: not_active_time, где можно через дефис указать не активное время (или наоборот - активное время). Когда прогоняешь задачу - проверять - попадает ли под данные рамки, ну и оповещать, или - нет.
Чтоб конкретному юзеру не слалось более 21 дня - можно создать отдельную таблицу, где будет дата конца (или просто конца), и, соответственно, мерджить таблицы, где дата меньше текущей
FatCat
Я бы сделал 2 таблицы: клиенты и задачи.
При добавлении нового клиента он добавляется в таблицу клиентов, и одновременно в таблицу задач добавляются все оповещения на 21 день вперед.
Дальше скрипт по крону каждый час находит текущие задачи, отправляет оповещения, и удаляет из таблицы выполненные.

_____________
Бесплатному сыру в дырки не заглядывают...
depp
при работе со временем всегда использую следующую структуру:
дата начала | продолжительность.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.