Я установил 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 в браузере я получаю:
{Array ([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 [конец] => 2013-03-14 [5] => [url] =>) Массив ([0] => 2 [id] => 2 [ 1] => Событие 2 [название] => Событие 2 [2] => 2013-04-24 [начало] => 2013-04-24 [3] => [start_time] => [4] => 2013- 03-26 [end] => 2013-03-26 [5] => [url] =>) Массив ([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, но она не работает должным образом.
Может кто-нибудь предложить, как исправить это?
Сначала исправьте свой PHP: вывод, который вы показываете, не соответствует последнему 'echo', который выводит только последний список в фигурных скобках. Это показано таким образом, потому что '' $ var'' не оценивает '$ var' (удаляет одинарные кавычки). Также вы, вероятно, хотите 'array_push ($ bookings, ...)' вместо того, чтобы назначать его на каждый цикл и т. Д. И т. Д. – MaxD