【发布时间】:2017-12-07 03:47:38
【问题描述】:
我正在尝试使用 PHP 和 AJAX 从表中检索数据,目前我能够以 json 格式显示我的查询结果,我想要做的是从该数组中选择一个特定的数据,对于例如我得到这个数组:
{data: [{IdProduct: "1", Name: "Name here..........",...}]}
例如,我只想选择名称,我尝试这样做:
function LoadProductos() {
$.ajax({
url: '../../class/loadProd.php',
method: 'POST',
success: function (data) {
var aRC = JSON.parse(data);
for (var i = 0; i < aRC.length; i++) {
console.log(aRC[i].Name);
}
}
});
}
但这并没有显示任何内容,我该怎么做?这是我的 PHP 代码:
while($row = mysqli_fetch_array($registros)) {
$table.='{
"IdProduct":"'.$row['IdProduct'].'",
"Name":"'.$row['Name'].'",
"Description":"'.$row['Description'].'",
"ImagePath":"'.$row['ImagePath'].'"
},';
$table = substr($table, 0, strlen($table) -1);
echo '{"data":['.$table.']}';
}
【问题讨论】:
-
您尝试在返回时解析 JSON 数据,但您没有在 PHP 中创建有效的 JSON 数据。使用
json_encode(),永远不要尝试自己编写 JSON 代码。 -
不要构建自己的 json-string。只需创建一个 PHP 数组并使用 json_encode() 对其进行编码。
-
最后两行($table = ... 和 echo ...)应该在循环之后。
-
建议: 而不是
substr($table, 0, strlen($table) -1),修剪字符串:trim($table, ',')。 (在其他情况下,也就是。这里你仍然应该使用 json:encode(),如前所述)。 -
好的,现在我明白了!我是 PHP 新手,有一件事......我如何将 json_encode() 与我当前的代码一起使用?
标签: javascript php jquery mysql ajax