我从一个新站点开始(这是我的第一个站点),但遇到了大麻烦!我写了这段代码
<?php
include("misc.inc");
$cxn=mysqli_connect($host,$user,$password,$database) or die("couldn't connect to server");
$query="SELECT DISTINCT country FROM stamps";
$result=mysqli_query($cxn,$query) or die ("couldn't execute query");
$numberOfRows=mysqli_num_rows($result);
for ($i=0;$i<$numberOfRows;$i++){
$row=mysqli_fetch_assoc($result);
extract($row);
$a=json_encode($row);
$a=$a.",";
echo $a;
}
?>
输出如下:
{"country":"liechtenstein"},{"country":"romania"},{"country":"jugoslavia"},{"country":"polonia"},
这应该是一个正确的 JSON 输出...
我现在如何在 Jquery 中获得它?我试过了
$.getJSON
但我无法正确融合它。我还不想将数据传递给 DIV 或 HTML 中的类似内容。
作为更新,Andres Descalzo 的代码有效!
<?php
include("misc.inc");
$cxn=mysqli_connect($host,$user,$password,$database) or die("couldn't connect to server");
$query="SELECT DISTINCT country FROM stamps";
$result=mysqli_query($cxn,$query) or die ("couldn't execute query");
$numberOfRows=mysqli_num_rows($result);
echo "{data: [";
for ($i=0; $i<$numberOfRows; $i++){
$row=mysqli_fetch_assoc($result);
extract($row);
$a = (($i!=0)?",":"") . json_encode($row);
echo $a;
}
echo "]}";
?>
输出是正确的,如下所示:
{data: [{"country":"liechtenstein"},{"country":"romania"},{"country":"jugoslavia"},{"country":"polonia"}]}
我该如何使用$getJSON
?
没关系,语法是
$.getJSON( url, [ data ], [ callback(data, textStatus) ] )
并且url是上面提到的PHP文件但是[data]
和回调函数?