我正在使用 JSON 向服务器发送数据或从服务器发送数据,但通常我一次发送一个数据,现在我想:
从表(mysql 数据库)中检索所有行 --> php 将其放入 JSON 数组 + 回调中 ---> javascript 检索它并通过循环数据将其显示出来。
这是我的 javascript(jQuery):
$.getJSON(domain_path + 'generate.php?table=' + tbname + '&callback=?', function(data) {
});
如您所见,其中有 table= 表名称。这是为了让php知道从哪个表中提取数据。
但是对于 php 部分,我不确定使用什么来生成 JSONP 数组。
<?php
//connects to database
include 'connect.php';
$tbname = mysql_real_escape_string($_GET['table']);
$callback = $_GET['callback'];
//some mysql commands
//after mysql commands
//i would use this to output data but this is only for one line of data.
$output = array('error'=>'0');
$out_string = json_encode($output);
echo $callback.'('.$out_string.');';
?>
Mysql表结构:
表名称:users
名称、链接、电子邮件
如何从用户表中获取包含姓名、链接和电子邮件的所有行并将其放入 JSON 数组中。
我如何使用 javascript(jquery) 显示它?
是否使用了javascript中的for
函数
最佳答案
在 PHP 中打印 JSON 数组:
$query = mysql_query("SELECT * FROM ".$tbname."");
$rows = array();
while($r = mysql_fetch_assoc($query)) {
$rows[] = $r;
}
print json_encode($rows);
在 jQuery 中捕获并循环结果:
$.getJSON(domain_path + 'generate.php?table=' + tbname + '&callback=?', function(data) {
$.each(data, function() {
$.each(this, function(k, v) {
/// do stuff
});
});
});
首先,每个循环都会遍历您的行/对象;第二个循环遍历您的属性/列。
关于php生成json数组然后javascript将其显示出来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9989289/