PHP日历设计问题

标签 php mysql calendar timestamp

我有一个日历,以前被分成 30 分钟的 block 。我正在更新网站并希望为日历实现一个新想法,想看看这里是否有人对数据的保存/引用方式有意见。

物理布局为 7 列(周一至周日)x 48 行(中午 12:00 至晚上 11:30)。

在我以前的版本中,我只允许将一个时间段注册到一个事件中,所以最多 30 分钟。

我希望能够在一天内上下调整时间,这应该很容易,因为旧设计使用带有时间戳的 start_time 和 end_time。

我想分配一个跨越多天的事件,比如周一至周五下午 1 点到 2 点。 然后我想在 7x48 表中显示该事件,例如 rowspan=5 和 colspan=2,因此它的 1 个大块包含来自数据库的事件详细信息。

我不是在寻找代码示例,而是主要是想知道如何以一种易于在我的日历类中显示/操作的格式将其最好地存储在数据库中。

感谢任何帮助。谢谢!

最佳答案

考虑通过将其分成两个 SQL 表来分解任务的复杂性:

(1)events:存储关系事件信息,包含日期、时间范围、其他信息等复杂信息。

  • 添加一个“父”字段,这样您就可以通过复制懒惰地跨越一个事件,从而将每个条目指向主条目,而无需即时重新计算

(2) 可用性:只存储用于呈现的 HTML 表格信息 - 显示限制和问题(您甚至可以不厌其烦地为其提供 rowspan 和 colspan 属性),因此它与 HTML 表格具有 1:1 的关系。

否则,查看具有重复意识的事件库或将您的库与 Google 日历集成。

关于PHP日历设计问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4935951/

相关文章:

php - 提取仅包含某些数据的行 PHP 和 Mysql

mysql - 为每个新用户更新数据库表中的行 WebMatrix

python - 使用 Python 将一个月添加到给定日期(后一天舍入)

C初学编程求助日历代码更新

javascript - 我需要包含哪些 js 文件才能使用 ExtJs 日历?

php - 警告 : Cannot modify header information - headers already sent by ERROR

php - 从 php now() 检查 mySql 日期时间是否早于 1 天

php - 需要一个更新语句,将 mysql 中不同表中的两个列值相乘

php - 在php中获取正确的日期格式

mysql - 如何将此 SQL 语句转换为 PostgreSQL?