Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Как это хранить в БД?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Хранить, проверять, отправлять...
webog
Отправлено: 23 Октября, 2019 - 12:36:37
Post Id


Частый гость


Покинул форум
Сообщений всего: 242
Дата рег-ции: Нояб. 2011  


Помог: 0 раз(а)

[+]


Всем добра!

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

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

Буду благодарен, тем кто откликнется Улыбка


-----
Hello!
 
 Top
Vladimir Kheifets
Отправлено: 29 Октября, 2019 - 12:12:01
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 879
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


Помог: 37 раз(а)




webog пишет:
Всем добра!

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

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

Буду благодарен, тем кто откликнется Улыбка

Добрый день!
Пишите в СRON
0 */3 * * * ........../Msg.php
Скрирт Msg.php будет запускаться каждые три часа.
Msg.php выбирает из БД дату с которой выдавать, сколько дней и установку на ночное время.
Если актуальная дата и время соответсвуют, сообщение отправляется.
Если дату с которой выдавать истекла из Msg.php редактируется строка CRON
#0 */3 * * * ........../Msg.php
Удачи!
 
 Top
LIME
Отправлено: 29 Октября, 2019 - 12:40:14
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Редактируется крон? Шикарно
Зачем? Запускаем каждые 5мин в чем проблема
Потом надо отметить все взятые задачи как исполняемые. Чтобы в случае длительного выполнения следующий не взял ее. Это же позволяет параллелить. После выполнения отметить как завершенные или неудачные. При этом выполнение может крашнуть на любом этапе. Например взяли задание и отметили и тут же крашнули. Следующий процесс это уже не возьмет. Значит еще нужен процесс сборщик таких артефактов. Значит пишем еще и время для смены статуса задания, чтобы от него отталкиваться при решении является ли задание недоделанным. Или другой механизм. Например pid процесса выполнятора, но тогда хрена тебе распределенное выполнение.
Короче cap теорема итд итп

(Отредактировано автором: 29 Октября, 2019 - 12:40:56)

 
 Top
webog
Отправлено: 29 Октября, 2019 - 14:48:32
Post Id


Частый гость


Покинул форум
Сообщений всего: 242
Дата рег-ции: Нояб. 2011  


Помог: 0 раз(а)

[+]


Отбой!
Задача решена.


-----
Hello!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB