2

我有一个功能;如果函数正在运行 url = "ambildata.php?akhir=0";,则执行然后执行

$query = "SELECT id_hijau, judul, deskripsi, jenis, x, y FROM hijau ORDER BY id_hijau DESC LIMIT 1";

之后

$data = mysql_query($query);

$json = '{"wilayah": {';
$json .= '"petak":[ ';
while($x = mysql_fetch_array($data)){
    $json .= '{';
    $json .= '"id":"'.$x["id_hijau"].'",
        "judul":"'.htmlspecialchars($x["judul"]).'",
        "deskripsi":"'.htmlspecialchars($x["deskripsi"]).'",
        "x":"'.$x["x"].'",
        "y":"'.$x["y"].'",
        "jenis":"'.$x["jenis"].'"

    },';
}
$json = substr($json,0,strlen($json)-1);
$json .= ']';

$json .= '}}';

echo $json;

但我有一个错误

警告:mysql_fetch_array() 期望参数 1 是资源,布尔值在 C:\xampp\htdocs\ta\web\ambildata.php 第 13 行 {"wilayah": {"petak":[]}}

请帮我解决我的问题...

谢谢

4

1 回答 1

1

查询产生了错误而不是结果。如mysql_query 的文档中所述,如果出现错误,它将返回 BOOL false。使用mysql_error查看发生了什么。

编辑:您的错误意味着您将 FALSE 的任何一个 TRUE 传递给 mysql_fetch_array,这表明您$data是 FALSE 的 TRUE,并且因为$data = mysql_query($query);,这意味着 mysql_query 返回 TRUE 或 FALSE,并且它唯一的时间是当执行查询时出错;它返回假。这意味着真正的问题不在于 mysql_fetch_array,而在于您的查询或数据库级别的其他地方。

于 2012-07-07T17:33:30.690 回答