Radius搜索PHP,MYSQL和Google Maps

lne*_*n92 5 php mysql ajax google-maps

我正在搜索一个位置的纬度和经度的数据库.我想检索某个半径内的所有位置.

然后我将返回的结果编码为JSON并使用ajax检索数据,但是我得到一个未定义的错误,意味着没有从数据库返回的数据.

谁能看到我出错的地方?

继承人我的疑问

$sql="SELECT *, ACOS( SIN( RADIANS( `lat` ) ) * SIN( RADIANS( $fLat ) ) + COS( RADIANS( `lat` ) )
* COS( RADIANS( $fLat )) * COS( RADIANS( `lng` ) - RADIANS( $fLon )) ) * 6380 AS `distance`
FROM `markers`
WHERE ACOS( SIN( RADIANS( `lat` ) ) * SIN( RADIANS( $fLat ) ) + COS( RADIANS( `lat` ) )
    * COS( RADIANS( $fLat )) * COS( RADIANS( `lng` ) - RADIANS( $fLon )) ) * 6380 < 10
    ORDER BY `distance`";


    $result = mysql_query($sql);

    while($r = mysql_fetch_assoc($result)) $rows[] = $r;

    echo json_encode($rows); 
Run Code Online (Sandbox Code Playgroud)

Hei*_*ang 6

我对trig或SQL的帮助不大,我刚看到足够的Google地图问题指向本教程:

https://developers.google.com/maps/articles/phpsqlsearch#findnearsql

有一个查询,你可以尝试通过半径距离找到斑点,希望它适合你.

使用3959(英里)或6371(公里)