PHP填充FullCalendar,看起来正确,但数据不会显示

时间:2014-01-23 16:57:42

标签: javascript php mysql fullcalendar

我使用mySQL存储有关签出日期的信息,然后根据对象我想显示已经使用FullCalendar.js的时间

我正在使用PHP来引入行,然后循环遍历它们填充创建事件的位置,当我在页面上检查它时代码看起来正确,但是没有加载数据。

以下是生成页面的代码:

function getAllTimes(){
    if(!empty($_GET['id']))
    {
        $query = "
            SELECT userID, startDate, endDate
            FROM checkout
            Where equID =" .$_GET['id'];          


        global $db;
        $stmt = $db->prepare($query); 
        $stmt->execute(); 
        $rows = $stmt->fetchAll(); 
        echo "<script type=\"text/javascript\">
        $(document).ready(function() {    

                $('#calendar').fullCalendar({
                    events: [";
        $counter = 0;

       foreach($rows as $row):
         if($counter == 0)
         {
           echo "
                    {   
                        title  : '".$row['userID']."',
                        start  : '".$row['startDate']."',
                        end    : '".$row['endDate']."'
                    }";
                    $counter = $counter+1; 
         } 
        else
        {
            echo ",
                    {   
                        title  : '".$row['userID'].",'
                        start  : '".$row['startDate'].",'
                        end    : '".$row['endDate']."'
                    }";
                    $counter = $counter+1; 
        }
        endforeach;            
         echo   "
         ]
     });
}}";
        echo "
        </script>";

    }
    else
        echo "ID must be specified";

}

getAllTimes(); 

这是加载后的结果,但事件未添加到日历中。

<script type="text/javascript">
        $(document).ready(function() {    

                $('#calendar').fullCalendar({
                    events: [
                    {   
                        title  : 'ArtemBeer',
                        start  : '2014-01-16 00:00:00',
                        end    : '2014-01-16 00:00:00'
                    },
                    {   
                        title  : 'ArtemBeer,'
                        start  : '2014-01-15 00:00:00,'
                        end    : '2014-01-16 00:00:00'
                    },
                    {   
                        title  : 'ArtemBeer,'
                        start  : '2014-01-09 02:02:00,'
                        end    : '2014-01-10 03:03:00'
                    }
         ]
     });
}}
</script> 

1 个答案:

答案 0 :(得分:2)

你的数据(JS)有一个糟糕的逗号:

start  : '2014-01-15 00:00:00,'

应该是:

start  : '2014-01-15 00:00:00',

还可以使用 Chrome Inspector 通过控制台查看JS错误,否则您将整天猜测。