Я знаю, что есть миллион проектов, которые уже сделали это. Сказав, что то, что я пытаюсь сделать, это создать онлайн-календарь с использованием PHP и MySQL, вот что я планирую:
таблицы в базе данных
((calendar_item) id, title, start_date, start time, end time, recurrence_type_id, recurrence_qty, interval, end_date) ((recurrence_type) id, name, value (where I want to store the logic so it can be edited on the fly)) ((calendar_item_exception) id, calendar_item_id, title, start_date, start time, end time, recurrence_type_id, recurrence_qty, interval, end_date) ((join_calendar_day) calendar_id, day_id) ((day) id, name)
Основной поток, вытащить все записи из базы данных INNER JOIN calendar_item и calendar_item_exception ON id / calendar_item_id
начните с просмотра сегодняшней даты исключения и распечатайте все, что есть … если ничего не перейдет к calendar_item.
Все это имеет смысл в моей голове до этого момента. Я хотел бы знать, куда идти отсюда, чтобы добавить фактическую логику для recurrence_id и как ее реализовать:
т.е. элемент находится на __date recurs (recurrence_id) ежедневно (qty) 5x (интервал) каждые 3 дня (join_calendar_day) в понедельник, среду, пятницу
Я видел формат iical и смотрел PEAR, но, честно говоря, не могу понять следующий шаг в моей голове, чтобы сделать исключения (которые я действительно хочу увидеть, не используя другую фреймворк, желательно просто PHP и MySQL).
Чтобы уточнить мой вопрос дальше, я ищу примеры реального мира, а не абстрактные принципы; Я не программист, поэтому я должен увидеть что-то работающее, чтобы я мог его разобрать, чтобы понять это.
Нет PEAR, нет Ruby, нет Horde, нет других фреймворков, просто PHP и MySQL и как можно более простыми.
Это дубликат этих вопросов:
Хорошая ссылка из одного из этих вопросов – это статья об этом Мартина Фаулера.