Php json_编码不适用于行名称数组
我意识到我使用的是mysql,而不是mysql。我需要先解决这个问题,然后才能更新现有代码。我目前正在通过php从数据库查询数据和表行名称。我不明白为什么在运行json_编码时没有收到响应。有人能帮我吗 我希望JSON格式的输出如下所示Php json_编码不适用于行名称数组,php,mysql,json,Php,Mysql,Json,我意识到我使用的是mysql,而不是mysql。我需要先解决这个问题,然后才能更新现有代码。我目前正在通过php从数据库查询数据和表行名称。我不明白为什么在运行json_编码时没有收到响应。有人能帮我吗 我希望JSON格式的输出如下所示 { "projects" : [ { "title":"title 1", "image":"Image1", "subtitle":"subtitle 1", "about":"Blah Blah Blah" },
{ "projects" : [
{
"title":"title 1",
"image":"Image1",
"subtitle":"subtitle 1",
"about":"Blah Blah Blah"
},
{
"title":"title 2",
"image":"Image2",
"subtitle":"subtitle 2",
"about":"Blah Blah Blah"
}
]}
现在我的代码是这样的
// 1) Connect to mysql database
$con = mysql_connect($host,$user,$pass);
$dbs = mysql_select_db($databaseName, $con);
// 2) Query database for data
$result = mysql_query("SELECT * FROM $tableName");
if (mysql_num_rows($result) > 0)
{
$numFields = mysql_num_fields($result);
$fields = array();
$i = 0;
while ($i < $numFields) {
$fieldInfo = mysql_fetch_field($result, $i);
$fields[] = $fieldInfo->name;
$i++;
}
$userInfo = array();
$userInfo["projects"] = array();
while($row = mysql_fetch_row($result)) {
$project = array();
$i = 0;
while ($i < mysql_num_fields($result)) {
$project[$fields[$i]] = $row[$i];
$i++;
}
$userInfo["projects"][] = $project;
}
//echo '<pre>';
// print_r($userInfo);
//echo '</pre>';
echo json_encode($userInfo["projects"]);
}
else
{
echo ( "No rows found!" );
}
“但是,当我删除它并尝试将数据作为JSON返回时,我没有得到任何结果。”没有结果?这似乎不太可能。测试错误?是的,我什么也没得到。没有错误,但也没有响应。我不知道我做错了什么?使用PHPV5.4如果您看到的是从
print\u r
中显示的输出,很抱歉,但我不相信您在json\u encode
行中没有看到任何内容。如果您在json\u encode
行中没有看到任何内容,那么我不相信您从print\r
行中得到了输出。我认为这是一个测试错误。你说的测试错误是什么意思?如何解决这一问题?我向你保证我不会在页面上打印任何东西。我是说测试错误:运行旧版本的代码;观测误差;查看不同调试行的结果;等等,等等。有数百种方法可以误导你自己,让你认为X正在发生,而实际上是Y。(我知道:我已经被大多数方法绊倒了。)
Array
(
[projects] => Array
(
[0] => Array
(
[title] => title
[subtitle] => subtitle 1
[about] => Blah Blah Blah
[image] => Image1
)
[1] => Array
(
[title] => title 2
[subtitle] => subtitle 2
[about] => Blah Blah Blah
[image] => Image2
)
)
)