Q
全日历事件数据
3
A
回答
1
您需要实现一个PHP页面,该页面从MySQL数据库中检索事件数据并以JSON格式返回。然后,您将使用该URL作为日历的JSON feed source。
有the FullCalendar GitHub repository上的示例代码。
还有一个演示显示how to listen to events if something changes in the calendar。
2
我也是这么做的,我希望有更完整的PHP/MySQL方面的例子,因为我通常是一个ASP.NET/MSSQL人员,所以我不得不花费更多时间比我想要的一些基本的东西。这是我做了什么的大纲。这很基本。
首先,我创建MySQL中的表看起来像这样:
CREATE TABLE `events` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(200) NOT NULL,
`start_date` datetime NOT NULL,
`end_date` datetime NOT NULL,
`event_url` varchar(200) DEFAULT NULL,
`all_day` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
于是,我写了一个名为JSON-events.php一个PHP程序,这是我作为日历事件源。在这个程序中,你首先需要获得的开始和结束日期为当前显示的日历:
$start_date = $_GET['start'];
$end_date = $_GET['end'];
然后,你需要运行一个SQL查询来获取事件,在该窗口:
$sqlcommand = "select * from events
where start_date between from_unixtime($start_date) and from_unixtime($end_date)
or end_date between from_unixtime($start_date) and from_unixtime($end_date)
order by start_date";
然后,放在一起的阵列的结果:
$event_array = array();
while ($record = mysql_fetch_array($result)) {
$event_array[] = array(
'id' => $record['id'],
'title' => $record['title'],
'start' => $record['start_date'],
'end' => $record['end_date'],
'url' => $record['event_url'],
'allDay' => $record['all_day']
);
}
最后,JSON编码它和回声它:
echo json_encode($event_array);
这似乎工作。我不太熟悉在MySQL和PHP中处理日期/时间字段的方式,所以我不确定我是否以最有效的方式执行此操作。
相关问题
- 1. 全日历刷新事件
- 2. 全日历显示全天事件
- 3. 全日历事件数据显示问题
- 4. 日历事件Reece日历
- 5. 获取数据,使事件日历
- 6. 事件日历的数据库大小
- 7. 全日历中的DayClick事件警报
- 8. 全日历事件没有显示
- 9. 全日历没有显示的事件
- 10. 全日历拖动事件的句柄
- 11. 全日历事件不起作用
- 12. 全日历根据外部事件添加颜色
- 13. jquery事件日历
- 14. 事件日历 - Yii
- 15. Android日历事件
- 16. Android:事件日历
- 17. 带日历事件的PHP日历
- 18. Google日历,所有日历的事件
- 19. 谷歌日历全日历
- 20. 比较日期时在全日历中的DayClick事件警报
- 21. 特定日期的全日历中的DayClick事件警报
- 22. 使用多个日历时消失的全日历事件 - 流星
- 23. 如何根据事件数据显示日历startdate
- 24. PHP事件日历 - 浮动事件
- 25. 事件内部的jQuery日历事件
- 26. 日历控件显示日期事件
- 27. Google日历无法正确显示同事日历事件
- 28. Asp.net日历控件:如何将事件发送到数据库?
- 29. 日历事件UI的Android
- 30. 定制Kal日历事件
谢谢!说得通。 – Tac