【发布时间】:2014-06-17 20:52:21
【问题描述】:
我在解码 JSON 对象时遇到问题。我使用 Ajax 调用调用 PHP 脚本。 PHP 脚本返回一个 JSON 编码的对象,我可以读取但只能读取第一条记录。如何解码 JSON 对象?我正在使用 JQUERY Mobile。
PHP 脚本:
<?php
$host = "localhost";
$user = "root";
$pass = "[password]";
$databaseName = "zombieSurvival";
$tableName = "TBLusers";
//Connect to mysql database
include 'DB.php';
$con = mysql_connect($host,$user,$pass);
$dbs = mysql_select_db($databaseName, $con);
// 2) Query database
$result = mysql_query("SELECT * FROM $tableName");
$array = mysql_fetch_array($result);
echo json_encode($array);
?>
这里是 Ajax 调用:
$.ajax({
url: '/PHP/getUserMarkers.php',
data: "",
dataType: 'json',
success: function(data){
//How can I treat 'data' variable to make it a
//javascript array?
}
});
【问题讨论】:
-
即使这是一台
localhost机器,也不建议发布您的密码。 -
您可以在此副本中看到答案:Converting JSON Object into Javascript array
-
感谢 Jake - 我的疏忽...我来看看 lulian 发布的副本...
-
"如何解码 JSON 对象?"
dataType: 'json'设置告诉 jQuery 为您解码。因此,只要响应是有效的 JSON,data就应该已经是Array。关于“但只有第一条记录”,您必须使用mysql_fetch_array()循环以收集所有记录的列表。 mysql_fetch_array add all rows? -
非常感谢乔纳森!在检查了 lulian 发布的建议中的所有建议后,我可以看到问题似乎正是如此,从 php 脚本传递的对象仅包括第一条记录。正在检查您的链接...