我在服务器端使用PHP来获取json格式的输出,如下所示。在客户端,我使用jQuery显示结果,但它显示null
。请让我知道我哪里出错了。任何帮助表示赞赏。
PHP
while ($r = mysql_fetch_assoc($result))
{
$rows[] = $r;
}
echo json_encode($rows);
输出
[
{
"a_name": "affles",
"bname": "bua",
"c_number": "10101010",
"dateandtime": "2013-11-30 17:50:04"
},
{
"a_name": "affles",
"bname": "bua",
"c_number": "10101010",
"dateandtime": "2013-11-30 17:50:04"
},
{
"a_name": "anan",
"bname": "nesh",
"c_number": "2017439441",
"dateandtime": "2013-12-04 17:50:04"
}
]
客户端
$.getJSON("http://apip.com/results.php", function (data) {
$.each(data, function (index, value) {
$('<li>' + value.a_name + '</li>').appendTo('#groups');
});
});
使用JSONP的客户端代码:我修改了客户端以使用JSONP但仍然返回null。感谢帮助
<script>
(function() {
var flickerAPI = "http://apip.com/results.php?jsoncallback=?";
$.getJSON( flickerAPI,
(function( data ) {
$.each( data.items, function( index, value ) {
$('<li>' + value.a_name + '</li>').appendTo('#groups');
});
});
})();
</script>
答案 0 :(得分:1)
从这个fiddle可以看出,它运行正常。我怀疑是错误的是你正在使用http://apip.com/results.php
并且你可能在愚弄jQuery认为你正在做一个跨域请求(你可能正在做),这通常被浏览器禁止,除非你使用JSONP
。如果您拥有http://apip.com/,请使用
$.getJSON("/results.php", function (data) {
$.each(data, function (index, value) {
$('<li>' + value.a_name + '</li>').appendTo('#groups');
});
});