2013-04-05 150 views
0

我一直在環顧Google和SO,以獲取使用帶有PHP的手機的用戶的GPS位置。但是,我發現使用Javascript的唯一解決方案,我寧願不必使用Javascript來做一些複雜的事情,只需將一些PHP代碼添加到我現有的系統中即可。獲取手機的GPS位置

我的問題很簡單:我怎樣才能得到某人瀏覽我的網站與PHP,而不是Javascript的GPS位置?

此外: 如果必須使用Javascript,我該如何訪問PHP的值?此外,有沒有辦法從這個GPS位置獲取城市/國家,或者有可能通過另一種方法獲取城市/國家?

回答

3

無法通過PHP檢索這些數據,請記住PHP在服務器中執行,而不是在客戶端中執行,因此您需要像JavaScript這樣的客戶端執行語言。

+0

然而,是通過HTTP請求發送的任何GPS值?如果不是,我將如何將Javascript的值傳遞給PHP? – cpdt 2013-04-05 10:17:17

+0

您可以通過AJAX在JavaScript和PHP之間傳遞值 – m4t1t0 2013-04-05 10:18:48

+0

但是,如何從PHP腳本獲取Javascript值?我可以看到我怎樣才能得到一個PHP的Javascript值,但我怎樣才能做到這一點呢? – cpdt 2013-04-05 10:19:52

3

您無法使用PHP獲取GPS位置。

你可以使用GeoLocation來近似它(使用IP地址),但這是非常不可靠和最好的避免。

另一種選擇是使用內置於HTML5的位置API。在訪問您的網站,使用能夠移動設備(或瀏覽器)的,如果他們願意透露自己的位置功能的原因會問,但你不能強迫用戶泄露它:

function show_map(position) { 
    var latitude = position.coords.latitude; 
    var longitude = position.coords.longitude; 
    // let's show a map or do something interesting! 
} 

一個例子指南/概述值得一讀的是here(其中包括一個關於位置感知瀏覽如何工作的實例)。

位置信息在隱私方面是一個非常敏感的領域,因此手機制造商不允許自動披露您要查找的信息。

延伸閱讀資源:

+0

如何將此位置傳遞給PHP腳本?另外,我怎樣才能得到一個真實的位置(如城市或國家)呢? – cpdt 2013-04-05 11:32:49