尝试使用JSON将多维php数组传递给Javascript。代码拒绝输入JSON的成功状态,为什么会这样?
这是javascript文件:
array = [];
function callback(arr)
{
console.log(array);
//simpleText.setText = array[0]
};
$(document).ready(function() {
$.getJSON('database.php', function(phpdata){
console.log("po");
console.log(phpdata);
callback(phpdata);
});
});
和php文件:
header("Content-type: application/json");
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("atlas") or die(mysql_error());
$data = mysql_query("SELECT * FROM questions")
or die(mysql_error());
$i = 0;
$result_array = array();
while ($Row = mysql_fetch_array($data))
{
$user[] = array(
'id'=>$Row['id'],
'q'=>$Row['q'],
'a'=>$Row['a'],
'coordx'=>$Row['coordx'],
'coordy'=>$Row['coordy'],
);
}
var_dump($user);
$json = json_encode($user[0]);
echo $json;
答案 0 :(得分:2)
删除
var_dump($user);
线。它使结果无效JSON。
答案 1 :(得分:1)
getJSON
jQuery函数不返回错误。使用下面的ajax
函数检查错误消息并返回JSON(在jqXHR
对象内):
$.ajax({
url: 'database.php',
dataType: 'json',
success: function(data, textStatus, jqXHR) {
// success
},
error: function(jqXHR, textStatus, errorThrown) {
// error
}
});