-2

我收到此错误:

警告:mysql_fetch_array() 期望参数 1 是资源,布尔值在第 34 行的 /home/rydes235/public_html/search-test.php 中给出

尝试查询我的数据库时。

我的查询是:

    $query = mysql_query("SELECT postcode, ( 3959 * acos( cos( radians('$latitude') ) * cos( radians( lat ) ) * cos( radians( lng ) - radians('$longitude') ) + sin( radians('$latitude') ) * sin( radians( lat ) ) ) ) AS distance FROM uk_postcode_05 HAVING distance < 25 ORDER BY distance ASC LIMIT 0 , 5");

我试图简单地显示:

    while($row = mysql_fetch_array($query)){
    $town = ($row['town']);
    $country = ($row['country']);
    echo ($town.','.$country.'<br>');
}

(第 34 行是 mysql_fetch_array() 行)。

我的 mysql 表有列 - 邮政编码、城镇、国家、经度、纬度、地区。

有人知道吗?如果您需要更多信息,请告诉我,谢谢

4

1 回答 1

0

您需要确保 mysql_query 在调用 mysql_fetch_array() 之前不会返回错误

$query = mysql_query("...");
if ($query == false) {
    echo "Mysql error '". mysql_errno() . "' : " . mysql_error();
} else {
    ...
}

您还应该停止使用 mysql_*() 函数,因为它们已被弃用,并查看MySQLi以保护您的数据库免受 SQL 注入。

于 2013-02-08T21:59:32.020 回答