【发布时间】:2013-12-25 01:53:52
【问题描述】:
我有一个基本的 MySQL 数据库表 People 有 3 列 (ID, Name, Distance)
我正在尝试使用 PHP 将其输出为 JSON,以便我的 Web 应用程序可以获取它。我尝试使用另一个答案的解决方案:
$sth = mysql_query($con,"SELECT * FROM People");
$rows = array();
while($r = mysql_fetch_assoc($sth)) {
$rows[] = $r;
}
print json_encode($rows);
但是我只是返回一个[] 的空白数组。
更新:更改为 mysqli 并添加了转储:
$sth = mysqli_query("SELECT * FROM Events",$con);
$rows = array();
var_dump($sth);
while($r = mysqli_fetch_assoc($sth)) {
var_dump($rows);
$rows[] = $r;
}
print json_encode($rows);
返回:
NULL []
【问题讨论】:
-
为了安全起见,您是否验证过您的查询正在返回数据?
-
请不要再使用
mysql_*函数,它们已被弃用。有关详细信息,请参阅Why shouldn't I use mysql_* functions in PHP?。相反,您应该了解prepared statements 并使用PDO 或MySQLi。如果你不能决定哪一个,this article 会帮助你。如果你选择 PDO,here is a good tutorial.