我是Javascript和Json的新人 我需要在这个Jquery中得到像这个例子的输出 // 我需要的结果示例:
sc.status(['4_3'], 'unavailable')
;
sc.status(['2_4'], 'unavailable')
;
和..
Jquery代码:
setInterval(function() {
$.ajax({
type : 'get',
url : 'test.php',
dataType : 'json',
success : function(response) {
//iterate through all bookings for our event
$.each(response.bookings, function(index, booking) {
//find seat by id and set its status to unavailable
sc.status(booking.seat_id, 'unavailable');
});
}
});
}, 10000); //every 10 seconds
我使用json_encode将数据库值更改为php文件中的json输出(test.php)
php来源:
<?php
function checkrezerv() {
$dbhost="localhost";
$dbusername="root";
$dbpassword="";
$database="test";
$databse_info = mysqli_connect( $dbhost,$dbusername,$dbpassword,$database );
$chreservednsql="SELECT seat_id FROM reserve_tbl WHERE reserved='1' AND show_id='1'";
mysqli_set_charset($databse_info, "utf-8");
mysqli_query($databse_info,"SET NAMES 'utf-8'");
$row=mysqli_query($databse_info,$chreservednsql);
if ($row->num_rows > 0) {
$res=mysqli_fetch_array($row);
echo json_encode($res);
}
else {
$emptyc="";
echo json_encode($emptyc);
}
}
checkrezerv();
?>
和php文件的结果在这里:
{"0":"1_5","seat_id":"1_5"}
我无法搜索和解决问题:(
答案 0 :(得分:0)
在服务器端,您只获得第一行,更改test.php如下:
if ($row->num_rows > 0) {
$rows = array();
while($res = mysqli_fetch_array($row)) $rows[] = $res;
echo json_encode($rows);
}
else {
$emptyc=array();
echo json_encode($emptyc);
}
在js方面:
$.ajax({
type : 'get',
url : 'test.php',
dataType : 'json',
success : function(response) {
//HERE
$.each(response, function() {
sc.status(this['seat_id'], 'unavailable');
});
}
});