2013-03-10 128 views
-1

我已经安装在网站上fullcalendar,它的工作原理确定从默认源,一个名为JSON-events.php看起来绘制它的数据是这样Fullcalendar数据库

{ $year = date('Y'); 
    $month = date('m'); 

    echo json_encode(array(

     array(
      'id' => 111, 
      'title' => "Event1", 
      'start' => "$year-$month-10", 
      'url' => "http://yahoo.com/" 
     ), 

     array(
      'id' => 222, 
      'title' => "Event2", 
      'start' => "$year-$month-20", 
      'end' => "$year-$month-22", 
      'url' => "http://yahoo.com/" 
     ), 

     array(
      'id' => 333, 
      'title' => "Event3", 
      'start' => "$year-$month-25", 
      'url' => "http://yahoo.com/" 
     ) 


    ));} 

所以我的问题是要写入数据从数据库转换成json-events.php,以便可以通过fullcalendar获取它。

这是我的代码:

{include 'db_connection.php'; 

//perform database query 
$result = mysql_query("SELECT * FROM mhall_cal"); 
if (!$result) { 
    die("Database query failed: " . mysql_error()); 
} 

$num = mysql_num_rows($result); 

$bookings = array(); 

for($i=0;$i<$num;$i++){ 
    $row = mysql_fetch_array($result); 
    print_r($row); 
    $id = $row['id']; 
    $title = $row['title']; 
    $start = $row['start']; 
    $start_time = $row['start_time']; 
    $end = $row['end']; 
    if($end=='0000-00-00'){$end='';} 
    $url = $row['url']; 

$bookings = array(
    'id' => '$id', 
    'title' => '$title', 
    'start' => '$start', 
    'end' => '$end', 
    'url' => '$url' 
    ); 
} 

echo json_encode($bookings);} 

并且当我在浏览器中显示的JSON-events.php我得到:

{阵列([0] => 1 [ID] => 1 [1] =>事件1 [标题] =>事件1 [2] => 2013-03-12 [开始] => 2013-03-12 [3] => 21:00:00 [start_time] => 21 :00:00 [4] => 2013-03-14 [end] => 2013-03-14 [5] => [url] =>)Array([0] => 2 [id] => 2 [ 1] =>事件2 [title] =>事件2 [2] => 2013-04-24 [start] => 2013-04-24 [3] => [start_time] => [4] => 2013-数组([0] => 12 [id] => 12 [1] =>事件3 [标题] =>事件3 [2] => 2013-05-10 [开始] = > 2013-05-10 [3] => [start_time] => [4] => 2013-05-11 [end] => 2013-05-11 [5] => [url] =>){“id “:”$ id“,”title“:”$ title“,”start“:”$ start“,”end“:”$ end“,”url“:”$ url“}}

我是新的json,但我认为花括号中的最后一部分是json编码,但它不能正常工作。

任何人都可以请建议如何解决这个问题?

+1

首先解决你的PHP问题:你显示的输出不对应最后一个'echo',它只输出大括号中的最后一个列表。这样就显示出来了,因为''var''不会评估'$ var'(删除单引号)。你也可能想'array_push($ bookings,...)'而不是在每个循环中分配它等等。 – MaxD 2013-03-11 06:20:32

回答

0

非常感谢MAXD为察觉我的愚蠢错误 - 现在我已经得到了它的工作:-)

BTW你如何在问题的底部,而不是作为一个完整的后加的小评论?