0

我知道已经有一百万个项目已经做到了这一点。话虽如此,我想做的是使用 PHP & MySQL 创建一个在线日历,这就是我的计划:

  1. 数据库中的表

    ((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)
    
  2. 基本流程,从数据库中拉取所有记录 INNER JOIN calendar_item 和 calendar_item_exception ON id/calendar_item_id

  3. 首先查看今天的日期是否有异常,然后打印那里的任何内容……如果没有任何内容移动到 calendar_item。

到目前为止,这一切在我的脑海中都是完全合理的。我想知道从这里到哪里添加recurrence_id的实际逻辑以及如何实现它:

即项目在 __date recurs (recurrence_id) 每天 (qty) 5x (interval) 每 3 天 (join_calendar_day) 周一、周三、周五

我已经看过 ical 格式,并且看过 PEAR,但老实说,我无法在脑海中掌握下一步来制作异常(我真的希望在不使用其他框架的情况下发生这种情况,最好只使用 PHP 和 MySQL)。

为了进一步澄清我的问题,我正在寻找现实世界的例子,而不是抽象的原则;我不是程序员,所以我必须看到一些有效的东西,这样我才能剖析它来理解它。

没有 PEAR,没有 Ruby,没有 Horde,没有其他框架,只有 PHP 和 MySQL,请尽可能简单。

4

1 回答 1

2

这是这些问题的重复:

其中一个问题的一个很好的链接是Martin Fowler 的这篇文章

于 2009-02-24T00:52:26.467 回答