-1

重複の可能性:
mysql_fetch_array() は、パラメーター 1 がリソースであると想定しており、select でブール値が指定されています

私のコード:

<?php 
$Sql="SELECT *, (3959 * acos(cos(radians(37)) * cos(radians(44)) * cos(radians(55) -    radians(-122)) + sin(radians(37)) * sin(radians(44))) as distance FROM TableName       HAVING distance < 25 ORDER BY distance LIMIT 0 , 20";
$result=mysql_query($Sql); 

while ($row = mysql_fetch_array($result)){
   echo $row['Id'];
}

エラー: 警告: mysql_fetch_array() は、パラメーター 1 が /home で指定されたリソース、ブール値であると想定しています...

こんにちは、私は経度と緯度をデータベースに保存しており、データベースに保存されているショップの経度と緯度を使用して、ユーザーの現在の経度と緯度に基づいて KM 距離を計算したいと考えています。また、距離に基づいてソートされた結果も必要です。私はグーグルでいくつかの解決策を見つけましたが、奇妙なエラーが発生しました..私のコードを確認してください. クエリで変数を使用していません。動作するかどうかをテストしたいだけです。助けてください

4

3 に答える 3

1

No ofは、SQL ステートメントopening parenthesesの no of と等しくありません。closing parentheses

これを試して...

SELECT *, (
        3959 * acos(
                 cos(radians(37)) * cos(radians(44)) * 
                 cos(radians(55) -  radians(-122)) + 
                 sin(radians(37)) * sin(radians(44))
                )
       )
    as distance FROM TableName HAVING distance < 25 ORDER BY distance LIMIT 0 , 20
于 2012-09-27T04:42:24.560 に答える
1

私はそれがこのようであるべきだと新しいことを発見しました

(3959 * acos(cos(radians(37)) * cos(radians(44)) * cos(radians(55) -    radians(-122)) + sin(radians(37)) * sin(radians(44))))

")" がありません

于 2012-09-27T04:33:26.340 に答える
0

データベースにポイントを保存する 場合、MySQL のバージョンが 5.0.16 以降の場合、http ://dev.mysql.com/doc/refman/5.1/en/spatial-extensions.html の使用を検討してください。

ここに例があります: http://howto-use-mysql-spatial-ext.blogspot.com/

于 2012-09-27T04:43:18.243 に答える