如何从MySQL获取JSON信息

时间:2013-12-03 22:25:06

标签: php mysql sql json

我想问一下,在解析数组时没有问题,但是当涉及一行信息时,我无法使其工作。

对于我的JSON输出:

$sql3 = mysql_query("SELECT description_fr FROM aboutUni where id = 1" ); 
$query = mysql_query("SELECT description FROM aboutUni WHERE id = 1");

echo '{"status":"0",';
echo '"about-uni-desc":"'.$query.'",';
echo '"about-uni-desc-fr":"'.$sql3.'",';
echo '"images": [';

结果是查询和sql3变量是 资源ID#4和资源ID#3 为什么我无法从某个我不知道的地方获得确切的信息

2 个答案:

答案 0 :(得分:1)

如果您希望查询得到多个结果,那么您需要迭代结果sql3,如下所示:

while ($row = mysql_fetch_assoc($sql3)) {
     echo '"about-uni-desc-fr":"'.$row['description_fr'].'",';
}

建议:

  • 使用PDO驱动程序,它将结果直接返回为具有各种数组的数组 格式
  • 使用json_encode返回json响应
$array = array(
    'status' => 0,
    'about-uni-desc' => $value,
    'about-uni-desc-fr' => $value2
);
echo json_encode($array);

答案 1 :(得分:0)

看一下php.net上的例子: http://us2.php.net/mysql_query

这样做:

$sql3 = mysql_query("SELECT description_fr FROM aboutUni where id = 1" ); 
$query = mysql_query("SELECT description FROM aboutUni WHERE id = 1");

$result1 = mysql_fetch_assoc($sql3);
$result2 = mysql_fetch_assoc($query);

echo '{"status":"0",';
echo '"about-uni-desc":"'.$result1['description_fr'].'",';
echo '"about-uni-desc-fr":"'.$result2['description'].'",';
echo '"images": [';