FullCalendar не отображает время от событий JSON

Приветствую,

Использование FullCalendar ( http://arshaw.com/fullcalendar/ ) для вывода событий из таблицы базы данных MySQL через JSON. События отображаются в календаре, но по какой-то причине он игнорирует время (часы, минуты, секунды) события. Вот Javascript со страницы календаря –

<script type='text/javascript'> $(document).ready(function() { $('#calendar').fullCalendar({ editable: false, events: "json-events.php", eventDrop: function(event, delta) { alert(event.title + ' was moved ' + delta + ' days\n' + '(should probably update your database)'); }, loading: function(bool) { if (bool) $('#loading').show(); else $('#loading').hide(); } }); }); </script> 

и мой файл JSON PHP (обратите внимание, что я включаю время после даты, в настоящее время это поле устанавливается только как DATE):

 <?php include $_SERVER['DOCUMENT_ROOT'] . '/includes/pdo_conn.inc.php'; $getEventsSQL = $db->query("SELECT id, title, date_start AS start, date_end AS end FROM training"); $events = array(); while ($row = $getEventsSQL->fetch()) { $start = $row['start']; $end = $row['end']; $title = $row['title']; $eventsArray['id'] = $row['id']; $eventsArray['title'] = $title; $eventsArray['start'] = $start . " 13:00:00"; $eventsArray['end'] = $end . " 14:00:00"; $eventsArray['url'] = "http://somewhere.org"; $events[] = $eventsArray; } echo json_encode($events); ?> 

Вышеуказанные результаты:

 [{"id":"13","title":"Test 1","start":"2010-05-18 13:00:00","end":"0000-00-00 14:00:00","url":"http:\/\/tapp-essexvfd.org"},{"id":"14","title":"Test 2","start":"2010-06-18 13:00:00","end":"2010-06-19 14:00:00","url":"http:\/\/tapp-essexvfd.org"},{"id":"15","title":"Test 3","start":"2010-06-18 13:00:00","end":"0000-00-00 14:00:00","url":"http:\/\/somewhere.org"},{"id":"16","title":"test4","start":"2010-05-03 13:00:00","end":"0000-00-00 14:00:00","url":"http:\/\/somewhere.org"}] 

Благодаря!

редактировать

Вот модифицированный PHP, чтобы отразить принятое решение. Благодаря!

  <?php include $_SERVER['DOCUMENT_ROOT'] . '/includes/pdo_conn.inc.php'; $getEventsSQL = $db->query("SELECT id, title, date_start AS start, time FROM events WHERE date_start >= NOW() AND status = 1"); $events = array(); while ($row = $getEventsSQL->fetch()) { $start = $row['start']; $title = $row['title']; $eventsArray['id'] = $row['id']; $eventsArray['title'] = $title; $eventsArray['start'] = $start . " " . $row['time']; $eventsArray['end'] = $end; $eventsArray['url'] = "#"; $eventsArray['allDay'] = false; $events[] = $eventsArray; } echo json_encode($events); ?> 

Попробуйте добавить «allDay»: false для вашего json. У меня была такая же проблема, см. Документацию «allDay»:

Не включайте кавычки вокруг своего истинного / ложного. Это значение не является строкой!

При указании объектов событий для событий или событийных источников исключение этого свойства приведет к наследованию от allDayDefault, которое обычно является ложным.

Однако «allDayDefault» по умолчанию имеет значение true?!?

http://arshaw.com/fullcalendar/docs/event_data/Event_Object/

http://arshaw.com/fullcalendar/docs/event_data/allDayDefault/

Вы можете установить allDayDefault как false при создании календаря:

 $('#calendar').fullCalendar({ allDayDefault: false, event: ... }); 

Дефисы в датах недействительны. Вместо:

 [{"id":"10", "title":"Urlaub", "start":"2010-11-24T07:30:00+01:00", "end":"2010-11-24T16:15:00+01:00", "allDay":false}] 

Должно быть:

 [{"id":"10", "title":"Urlaub", "start":"2010 11 24 07:30:00+01:00", "end":"2010 11 24 16:15:00+01:00", "allDay":false}]