Javascript 无法检索完整日历事件的时间和日期

Javascript 无法检索完整日历事件的时间和日期,javascript,mysql,json,ajax,fullcalendar,Javascript,Mysql,Json,Ajax,Fullcalendar,我已经加载了在mysql中创建的所有事件的fullcalendar(v2)。但是当我点击一个事件时,时间显示为00:00:00的start和end的null,即使我在mysql中设置了开始和结束时间。我猜这也会迫使所有事件保持全天事件状态 请告知 下面是mysql的截图和我用来从事件中检索值的脚本 MySQL表格截图 js代码: $('#calendar').fullCalendar({ header: { left: '

我已经加载了在mysql中创建的所有事件的fullcalendar(v2)。但是当我点击一个事件时,时间显示为
00:00:00
start
end
null
,即使我在mysql中设置了开始和结束时间。我猜这也会迫使所有事件保持全天
事件状态

请告知

下面是mysql的截图和我用来从事件中检索值的脚本

MySQL表格截图

js代码:

$('#calendar').fullCalendar({
                header: {
                    left: 'prev,next today',
                    center: 'title',
                    right: 'month,agendaWeek,agendaDay'
                },
                defaultDate: '2015-12-16, 00:00:00',
                selectable: true,
                selectHelper: true,
                editable: true,
                eventLimit: true, // allow "more" link when too many events
                events: "events.php",
                eventRender: function (event, element, view) {
                    if (event.allDay === 1) {
                        event.allDay = true;
                    } else {
                        event.allDay = false;
                    }
                },
                eventClick: function (event) {
                    $('#eventTitle').val(event.title);
                    $('#eventStart').val(moment(event.start).format('YYYY-MM-DD, HH:mm:ss'));
                    $('#eventEnd').val(moment(event.end).format('YYYY-MM-DD, HH:mm:ss'));
                    $('#eventDescription').val(event.description);
                    $('#myModal').modal();
                }
我使用一个简单的
select
语句从mysql检索数据

events.php

<?php
// List of events
 $json = array();

 // Query that retrieves events
 $sql = "SELECT * FROM evenement ORDER BY id";

 // connection to the database
 try {
 $bdd = new PDO('mysql:host=localhost;dbname=fullcalendar', 'root', '');
 } catch(Exception $e) {
  exit('Unable to connect to database.');
 }
 // Execute the query
 $resultat = $bdd->query($sql) or die(print_r($bdd->errorInfo()));

 // sending the encoded result to success page
 echo json_encode($resultat->fetchAll(PDO::FETCH_ASSOC));

?>

花了一段时间,但找到了解决方案/解决方法

1) 与其将MySQL中的startdate和enddate列声明为DATETIME,不如使用VARCHAR格式

我尝试了下面的方法来存储日期和时间,包括时区

var startdate = moment($('#eventStart').val()).format("YYYY-MM-DD[T]HH:mm:SS")+05:30 \\string concatenated with timezone
var enddate = moment($('#eventEnd').val()).format("YYYY-MM-DD[T]HH:mm:SS")+05:30 \\string concatenated with timezone
在页面加载期间,fullcalendar加载事件所需的格式应与以下除allDay之外的其他事件的格式相同

[{"id":"1","title":"New Event","start":"2015-01-14T00:01:00+05:30","end":"2015-01-14T00:01:00+05:30","allDay":false}]
信贷:Ashik Basheer

我是编程新手,因此欢迎任何建议/建议来改进代码