2013-03-05 40 views
-1

我想實現恢復社區會議查找程序。我有一個數據庫和地圖設置。我試圖添加一個變量來顯示當天的會議,這也是基於「最近的」位置優先級。我如何在我的數據庫中獲取今天的日期變量來選擇性地僅顯示那些日內會議?我正在使用谷歌地圖API。谷歌地圖按小時和地點顯示標記

感謝,

特里

回答

0

在數據庫中你有你存儲我猜會議的日期和時間的日期時間字段。

當您從數據庫中提取信息並將其放入地圖時,只需使用任何適用的SQL語言來僅選擇符合所需日期的記錄。

這實際上更多的是一個sql問題。

最接近的位置可能不會被照顧,但你需要做的也是一個sql問題。您需要將lat和long字段添加到數據庫並存儲每個會議位置的緯度/經度。

然後,你可以做一個基於距離的SQL搜索,一旦你有這些和用戶的緯度/經度。

地圖根本不會進入選擇過程。

... 編輯。

按時間選擇相當簡單,但我想我會共享基於距離的SQL SELECT我用了一段時間。注意。它與MySQL一起使用,但我認爲它應該適用於幾乎所有的SQL數據庫。

"SELECT name, tel, (((acos(sin((".$latitude."*pi()/180)) * sin((`latitude`*pi()/180))+cos((".$latitude."*pi()/180)) * cos((`latitude`*pi()/180)) * cos(((".$longitude."- `longitude`)*pi()/180))))*180/pi())*60*1.1515) AS distance FROM takeaway WHERE active AND (((acos(sin((".$latitude."*pi()/180)) * sin((`latitude`*pi()/180))+cos((".$latitude."*pi()/180)) * cos((`latitude`*pi()/180)) * cos(((".$longitude."- `longitude`)*pi()/180))))*180/pi())*60*1.1515) < 10 AND tel AND type = 'transport/taxi' ORDER BY distance LIMIT 5" 

這爲您提供了編輯和重複使用的基礎知識。請記住將時間/日期檢查添加到最終字符串中。