|
|
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
То ли дело к ночи, то ли я шарю не очень.. вообщем суть вопроса: Есть таблица event с полем date_added, в котором храниться дата время добавления. Так же указывается интервал напоминания в формате "через n месяцев, n дней, n часов". Вот думаю как хранить этот интервал. Создать таблицу period в которую забивать готовую высчитанную дату и с ней сравнивать (или доп поле в таблице event). Но есть нюанс. После наступления срока, нужно обновить date_added до текущей, и интервал увеличить на "n месяцев, n дней, n часов". Как быть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 01:00:01 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
Может в таблице period сделать 4 поля month day hour, alarm. Алярм использовать для сравнения с date_added, а те поля для расчета нового алярма на япе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 01:10:30 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
Перевести интервал в часы. Тогда для вычисления даты-времени напоминания используем DateAdd(), а при выводе интервала - форматирование к требуемому виду. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 08:58:34 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
Akina, Спасибо, хранить интервал в часах я и не подумал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 09:18:26 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
Мне другое непонятно... Как контролировать дату срабатывания? Если в таблице 10000 строк - это вешать 10000 алармов? Как? У меня в качестве аларма используется юзер, - но может я чего-то не знаю? При обнаружении по какой-то из строк наступившего часа Х, юзер что-то делает с этой строкой, после чего час Х автоматом сдвигается к следующей дате. Но если юзер профилонит - ничего не произойдет, что не есть хорошо... Нет, понятно, что второго юзера можно назначить контролером и дать ему отчет о просроченных событиях, так в принципе и организовано, но вдруг есть еще какие механизмы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 10:02:59 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
Cygapb-007Если в таблице 10000 строк - это вешать 10000 алармов? У него event - это таблица так названа. А алярм один, который из неё выгребает дозревшие записи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 10:10:19 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
я планировал по крону раз в час запускать скрипт и смотреть у кого дата наступила. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 10:10:28 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnogu, А что за задача вообще? В зависимости от задачи могут потребоваться довольно сложные комбинации полей. Например, контролировать дни рождения интервалом, выраженным в часах, не получится. Санитарный день в последний четверг месяца - тоже не получится. Даже зарплата 1 числа каждого месяца - и то не получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 10:42:24 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
miksoft, можно сказать органайзер своеобразный. Ну к примеру, я каждый день покупаю молоко. Я добавляю себе задачу "покупка молока" и ставлю интервал 1 день. Каждый день мне должно падать напоминание купить молока. Тут опять нюанс, если я добавлю задачу в 11 вечера, то и напоминание мне придет в 11 вечера. Сплю я такой, а мне смс купи молока. Тоже этот момент надо как то продумать, т.к. интервал + 24 часа уже не подойдет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 10:55:33 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnoguНу к примеру, я каждый день покупаю молоко. Я добавляю себе задачу "покупка молока" и ставлю интервал 1 день. Каждый день мне должно падать напоминание купить молока. Тут опять нюанс, если я добавлю задачу в 11 вечера, то и напоминание мне придет в 11 вечера. Сплю я такой, а мне смс купи молока. Тоже этот момент надо как то продумать, т.к. интервал + 24 часа уже не подойдет.Конкретно это лечится установкой начального момента срабатывания напоминания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 10:58:09 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnogu, как обычно это делается - добавим параметр "напоминать за N чего-то до наступления события" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 11:13:19 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
Alex_Ustinov, все равно будет погрешность, не будешь же каждую минуту проверять настало время или нет. Хотя бы раз в 15-20 минут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 11:15:47 |
|
||
|
Как хранить и высчитывать интервал
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnoguЯ добавляю себе задачу "покупка молока" и ставлю интервал 1 день. Каждый день мне должно падать напоминание купить молока. Тут опять нюанс, если я добавлю задачу в 11 вечера, то и напоминание мне придет в 11 вечера. Кто тебе мешает указать точное время срабатывания? Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2015, 11:51:31 |
|
||
|
|

start [/forum/topic.php?fid=47&tid=1832740]: |
0ms |
get settings: |
6ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
2ms |
| others: | 192ms |
| total: | 312ms |

| 0 / 0 |
