作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有一个需要返回一些值的 ajax,但是如果我使用 while()
从我的数据库中获取所有结果,则返回“无".
js:
$.post("ajax/file.ajax.php",
{
cache: false
},
function(data){
alert(data.region);
},'json'
);
php:
while(!$res->EOF)
{
header('Content-Type: application/json');
$return_data = array('value'=>''.$res->fields['VALUE'].'','region'=>''.$res->fields['REGION'].'');
echo json_encode($return_data);
$res->MoveNext();
}
那么,我怎样才能将 while 与 json 一起使用呢?
最佳答案
最简单的解决方案是创建一个数组,然后array.push
您正在生成的行到它的末尾。
例如:
PHP
$array = array();
while(!$res->EOF) {
$dataFromDB = array('value'=>''.$res->fields['VALUE'].'','region'=>''.$res->fields['REGION'].'');
$array[] = $dataFromDB; //or array_push($array, $dataFromDB);
$res->MoveNext();
}
header('Content-Type: application/json');
echo json_encode($array);
JS:
$.post("ajax/file.ajax.php",
{
cache: false
},
function(data){
for(n in data) {
alert(data[n].region);
}
},'json'
);
然后输出json编码的数组就完成了。
您还应该将 header 移出 while 循环并将其放在回显新数组之前。
关于php - 如何将 while() 与 json 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6679852/
我是一名优秀的程序员,十分优秀!