Fullcalendar 完整日历不显示3月31日事件

Fullcalendar 完整日历不显示3月31日事件,fullcalendar,Fullcalendar,我已经成功使用fullcalendar插件几个月了,突然遇到了一个bug。它不会在2012年3月31日展示任何活动。这种行为不会发生在运行PHPV5.3.8的测试站点服务器上,但会发生在实时站点服务器上。该服务器正在运行PHPV5.3.6 有人能解释一下这种情况吗。它可能与夏令时有关吗?我该如何解决这个问题 谢谢你的帮助 代码: 以下是VS_工作_事件文件: <?php require_once('Connections/HDAdavePDO.php'); if (isset($_POS

我已经成功使用fullcalendar插件几个月了,突然遇到了一个bug。它不会在2012年3月31日展示任何活动。这种行为不会发生在运行PHPV5.3.8的测试站点服务器上,但会发生在实时站点服务器上。该服务器正在运行PHPV5.3.6

有人能解释一下这种情况吗。它可能与夏令时有关吗?我该如何解决这个问题

谢谢你的帮助

代码:

以下是VS_工作_事件文件:

<?php
require_once('Connections/HDAdavePDO.php');

if (isset($_POST['start'])) {
  $unix_start = $_POST['start'];
  $date_start = strftime("%Y-%m-%d",$unix_start);

}
if (isset($_POST['end'])) {
  $unix_end = $_POST['end'];
  $date_end = strftime("%Y-%m-%d",$unix_end);
}

$pdo = new PDO('mysql:host=' . $host . ';dbname='.$database, $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$stmt2 = $pdo->prepare('SELECT * FROM vs_events WHERE event_date >= ? AND event_date < ?');
$stmt2->bindParam(1, $date_start);
$stmt2->bindParam(2, $date_end);
$stmt2->execute();
$stmt2->setFetchMode(PDO::FETCH_ASSOC);
$row_Calendar = $stmt2->fetchAll();

foreach ($row_Calendar as $row){
    if ($row['event_type'] == 13 && $row['active'] == 1){
    $display_date = substr($row['event_date'],0,10);
    $eventsArray['id'] =  $row['event_id'];
    $eventsArray['start'] = $display_date;
    $eventsArray['title'] = $row['event_subject'];
    $eventsArray['description'] = $row['event_text'];
    $eventsArray['type'] = $row['event_type'];
    $events[] = $eventsArray;
}
}
echo json_encode($events);
$pdo = null;
?>

查看两个事件源的JSON响应,我看不到发生在3月31日的事件

您的问题可能是服务器端查询事件或事件记录本身,而不是FullCalendar

$stmt2 = $pdo->prepare('SELECT * FROM vs_events WHERE event_date >= ? AND event_date < ?');
因此,如果$date\u end是3月31日,那么此查询将不会返回3月31日事件

31st March <  31st March is **false**

您需要提供更多详细信息、一些代码、填充FullCalendar源代码的JSON等。这里有一个指向不显示3月31日事件的日历页面的链接。Brandon-我已将脚本和数据源文件添加到我的问题中。事件在数据库中,但除非我将事件日期移到3月30日或4月1日,否则不会显示在日历上。我已尝试将JSON响应回显到屏幕,发现当使用3月31日结束日期时,不包括3月31日事件。但是,当使用4月1日的结束日期时,3月31日的事件将包含在JSON响应中。其他月份不会发生这种情况。5月31日的事件与2011年3月31日的事件一样正确。在作为一个问题发布之前,我确实尝试过研究这个问题。Brandon-我现在看到问题出在进行JSON调用的文件中。当查询的结束日期为3月31日时,数据库未返回3月31日事件。我不知道为什么这会发生在一台php服务器上而不是另一台。我现在正在研究这个问题。最终在Unix结束日期上增加了86399:$Unix\u End=$\u POST['End']+86399;
31st March <  31st March is **false**