2013-08-29 18 views
-2

我目前擁有用戶的經度和緯度,並將顯示我的數據庫中來自其他提供半徑爲150米示例的行的行。獲取經緯度附近的優惠信息嗎?

我怎麼能做出這樣?每個報價都有經緯度。

我真的很困惑,如果這是可能的。

請一些高手幫幫我。

$o->prepare("offers",array(
    "longtitude" => "10.2039494", 
    "latitude" => "55.203949", 
    "radius"  => 150 //in meters 
) 
); 

準備應該做出某種MySQL查詢的,顯示在半徑報價從用戶的緯度和經度150米(或2km,我應該可以改變這個?)。示例(提供了數據庫LONG和緯度)

'55.395591', '10.385513' 
'55.395554', '10.385208' 

我真的從這裏

+0

如何給這個http://dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html一個嘗試? – Smuuf

回答

0

計算兩個長/緯度點之間的粗略距離或更精確的距離(直線距離即是)卡是相當直接數學,你可以通過搜索找到大量的例子,例如:http://www.movable-type.co.uk/scripts/latlong.html

請注意,這將不會路由(駕駛/步行)的距離,你必須利用像谷歌地圖的東西。

+0

好的謝謝你的回答,我的數學真的很差,所以我問這個問題希望有人能幫助我。 – jesper

+0

@jesper也很可搜索:http://stackoverflow.com/questions/1006654/fastest-way-to-find-distance-between-two-lat-long-points http://stackoverflow.com/questions/ 2234204 /緯度 - 經度-找到最接近的緯度 - 經度複合-SQL或複合-CALC – Matthew