开发者可以使用FullCalendar创建强大的日历日程应用,FullCalendar提供了丰富的选项设置和方法调用,使得开发者可以轻松的创建各种功能的日历程序。本文将结合实例使用PHP读取MySQl数据,显示在FullCalendar日历中。

查看演示DEMO

根据FullCalendar日历插件说明文档中 的介绍,日历主体事件数据的来源有三,一是直接以javascript数组的形式显示日历事件,二是获取JSON数据形式显示日历事件,三是函数回调的形 式显示日历数据,三种调用数据的方式各有所用之处,通常我们在实际项目中会结合数据库,通过PHP等后台语言来读取数据库的数据,并以json格式返回给 前端,FullCalendar再处理接收的json数据显示在日历中。

HTML

一切像前面文章:日程安排FullCalendar介绍的一样,在页面中载入必要的javascript和css文件。

<link rel="stylesheet" type="text/css" href="css/fullcalendar.css">
<script src="js/jquery-1.9.1.min.js"></script>
<script src="js/jquery-ui-1.10.2.custom.min.js"></script>
<script src="js/fullcalendar.min.js"></script> 

然后,在页面的body里加入div#calendar,用来放置日历主体。

<div id='calendar'></div> 

jQuery

我们用以下代码调用FullCalendar,保存后浏览,我们可以看到页面中呈现一个漂亮的日历表,但是日历中没有具体的事件内容,我们使用 FullCalendar最主要的是要在FullCalendar中展示日程安排中的事件,给用户直观的展示过去或未来时间内安排的事情。 FullCalendar中的事件数据来源在events选项控制,当然如果是有多个数据来源可以使用eventSources选项。

$(function() { $('#calendar').fullCalendar({ header: {//设置日历头部信息 left: 'prev,next today', center: 'title', right: 'month,agendaWeek,agendaDay' }, firstDay:1,//每行第一天为周一 editable: true,//可以拖动 events: 'json.php'    //事件数据 });
}); 

PHP

从jQuery代码中我们可以看出,FullCalendar所有事件数据来自于json.php。json.php通过连接后台MySQL数据库,读取符合条件的事件数据,并最终以JSON数据格式的形式返回,请看代码:

include_once('connect.php');//连接数据库 $sql = "select * from calendar";
$query = mysql_query($sql);
while($row=mysql_fetch_array($query)){ $allday = $row['allday']; $is_allday = $allday==1?true:false; $data[] = array( 'id' => $row['id'],//事件id 'title' => $row['title'],//事件标题 'start' => date('Y-m-d H:i',$row['starttime']),//事件开始时间 'end' => date('Y-m-d H:i',$row['endtime']),//结束时间 'allDay' => $is_allday, //是否为全天事件 'color' => $row['color'] //事件的背景色 );
}
echo json_encode($data); 

值得一提的是,在返回的json数据中,每个字段如id,title..对应着FullCalendar的Event Object事件对象中的属性id,title..。

我们将最终数据以json_encode()输出,然后,前端FullCalendar会解析json数据并显示在日历中,这些FullCalendar都替我们做好了,只管刷新前端页面看下效果吧。

FullCalendar的读取数据操作很简单,接下来我们会讲述如何在FullCalendar日历中新增、修改和删除事件,敬请关注。

最后附上demo中的MySQL数据表calendar的表结构:

CREATE TABLE IF NOT EXISTS `calendar` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` varchar(100) NOT NULL, `starttime` int(11) NOT NULL, `endtime` int(11) DEFAULT NULL, `allday` tinyint(1) NOT NULL DEFAULT '0', `color` varchar(20) DEFAULT NULL, PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 

来源于helloweba.com 》 FullCalendar应用——读取JSON数据

FullCalendar 三:FullCalendar应用——读取JSON数据相关推荐

  1. android 读取json数据(遍历JSONObject和JSONArray)

    android 读取json数据(遍历JSONObject和JSONArray) public String getJson(){ String jsonString = "{\" ...

  2. 当向后台插入或读取JSON数据遇见回车时

    今天在项目中发现.当插入或读取JSON数据时遇见回车符.返回JSON数据格式时会报错(firebug里体现为乱码),百度了一下发现JSON不支持字符串里存在回车! 解决的方法: 在向接口插入带json ...

  3. powershell 遍历json_如何从Powershell脚本读取JSON数据并遍历它

    我开始学习Powershell,我正在尝试读取JSON文件.如何从Powershell脚本读取JSON数据并遍历它 这里是我的JSON文件(名为"versions.json"): ...

  4. java json utf-8_java读取json数据发生中文乱码的解决方法

    java读取json数据发生中文乱码的解决方法 发布时间:2020-06-21 15:58:48 来源:亿速云 阅读:268 作者:鸽子 java读取json数据出现乱码的代码://从json文件中读 ...

  5. java json 中文_java读取json数据中文乱码解决

    java读取json数据出现乱码的代码:(推荐:java视频教程)//从json文件中读取数据 StringBuffer stringBuffer = new StringBuffer(); try ...

  6. [js] localStorage 如何存储JSON数据并读取JSON数据

    localStorage是HTML5提供的再客户端实现本地存储的一种方法,但是localStorage方法只能存储字符串数据,有时候我们需要存储对象到本地比如:JSON:那么,localStorage ...

  7. fullcalendar php,日历插件fullcalendar+php的使用教程 — 读取json数据

    根据FullCalendar日历插件说明文档中的介绍,日历主体事件数据的来源有三,一是直接以javascript数组的形式显示日历事件,二是获取JSON数据形式显示日历事件,三是函数回调的形式显示日历 ...

  8. MATLAB读取JSON数据(使用JSONlab工具箱)

    前言 今天有一个json格式的数据,之前都是用其他语言读取的,然后为了处理方便想用matlab进行处理,结果发现官方并没有读取的函数,然后网上很多其他人自己写的函数都有一些问题,找到了一个工具箱用于j ...

  9. python读单行文本求平均值_利用Python读取json数据并求数据平均值

    要做的事情:一共十二个月的json数据(即12个json文件),json数据的一个单元如下所示.读取这些数据,并求取各个(100多个)城市年.季度平均值. { "time_point&quo ...

最新文章

  1. JAVA swing初级教程(四)
  2. 递推DP UVA 590 Always on the run
  3. 中国碳纤维风电叶片行业“十四五”发展规划及投资可行性分析报告2022-2028年版
  4. python字符串与文本处理技巧(2):大小写敏感搜索、最短匹配、多行匹配、Unicode标准化
  5. app vue 真机运行_使用 HBuilder 将 Vue 项目打包成手机 App
  6. 关于java.util.ConcurrentModificationException和remove倒数第二个元素
  7. 内网无纸化会议/智慧教室实时同屏RTSP组播技术方案思考
  8. 几大主流国产浏览器统一屏蔽996.ICU!
  9. C# 编程规范 (coding standard)
  10. python序列化模块struct_Python-序列化模块-json-62
  11. 微信群控二次开发SDK
  12. 30封外贸邮件模板,外贸人速收藏!
  13. 【阿里巴巴矢量图库搭建一个属于自己的字体图标库iconfont】
  14. python请输入星期几的第一个_Python 根据星期英文首字母判断星期几
  15. aid learning安装应用_aid learning安装python
  16. 「 iOS 知识小集 」2018 · 第 24 期
  17. VUX--小白初学使用安装
  18. Java---多线程入门
  19. Android App 专项性能监控工具
  20. c++中关于ceil向上取整和floor向下取整,‘/‘除法对整型的处理(详解)

热门文章

  1. 迷宫(洛谷-P1605)
  2. 最大值和最小值的差(信息学奥赛一本通-T1112)
  3. 津津的储蓄计划(信息学奥赛一本通-T1074)
  4. 46 SD配置-销售凭证设置-分配状态参数文件到项目类型
  5. php mongo in 查询语句,PHP 怎么执行mongodb 的 $in 和$size查询
  6. python读取yaml文件的内容_Python读取YAML文件过程详解
  7. 笨方法“学习python笔记之循环
  8. 抛物线的中点生成算法_零基础学习梯度下降算法
  9. vue 时间戳 格式转化(插件化) - 封装篇
  10. java 继承重写_java 封装 继承 重写 多态