повторяющиеся даты в стиле календаря Google в MySQL - PullRequest
0 голосов
/ 01 ноября 2011

Я хочу создать календарь, например, календарь Google, чтобы отслеживать предстоящие события людей.

Проблема заключается в том, что у людей могут быть повторяющиеся события.События, которые происходят каждую неделю или каждые 2 дня или каждые 1 месяц и т. Д. Или каждые 4 недели

Но я хочу иметь возможность перечислять предстоящие события ...

Как мне это сделать с помощью phpи mysql?

Например, если событие, которое происходит один раз в неделю с 31.10 по 30.30, нужно ли создавать отдельную строку в базе данных для каждой недели?

Но что, если событие происходит каждый будний день с 31.10 по 31.10.

Я просто хочу, чтобы люди добавляли события в базу данных, а затем перечисляли предстоящие события, которые у них будут.

Я также хочу иметь работу cron, которая будет напоминать людям о предстоящих событиях.

Если у меня есть задание cron - если я сохраняю каждое событие один раз (например, событие, которое происходит один раз каждые 2 дня, я сохраняю его как одну строку в базе данных, описывающую, что это происходит один раз каждые два дня),тогда мне придется делать много вычислений каждый раз, когда я запускаю задание cron, чтобы выяснить, происходит ли событие сегодня (учитывая, что оно должно происходить раз в 2 дня, мне нужно вычислить, является ли сегодня один из тех дней, когдатакое случается).

Есть ли более простой способ приблизиться к этому?

Я позволяю людям устанавливать следующие повторяющиеся свойства:

  • событие происходит каждые X число дней, X число недель,X число месяцев,
  • событие происходит каждый будний день от DATE до DATE или от DATE до вечности
  • событие происходит каждый месяц, неделю, каждый понедельник, пятница или каждый вторник, четверг
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...