2014-07-03 29 views
0

我正在尋找一種方式(PHP或Javascript的某種變體)來發現用戶粗略位置(500公里內/ 300英里內)。我做了大量的谷歌搜索,我想我已經用盡了目前意識到的任何手段。發現用戶位置

IP地址數據庫,如MaxMind等,都把我的位置在澳大利亞昆士蘭州布里斯本,事實上我的位置是澳大利亞昆士蘭州湯斯維爾。這是因爲我的ISP(澳大利亞最大的公司)運作的方式。如果可能的話,我不想使用HTML5的GeoLocation。網站上只有2個位置的醒目頁面讓我感覺會阻止人們訪問網站。

我的客戶有兩個位置,每個位置都有獨立的部分,這些位置是湯斯維爾&布里斯班。我不需要用戶地址,郊區甚至城市,只有一些可以讓他們默認到任一位置。

+1

GeoIP數據庫根本不是那麼細緻。它們只與ISP提供的信息一樣好。 – Barmar

+1

不是對你的計劃的批評,但是我個人認爲,當一個網站「發現」我的位置時,它絕對*討厭*,並且很多時候由於VPN使用或者糟糕的編程而導致錯誤,並且造成很多不便。我更喜歡根據我訪問過的網站獲取位置,然後可以選擇切換。但也許這只是我! – AardvarkApostrophe

回答

0

也許不是最具技術性的解決方案,但確定位置的絕對方法是詢問用戶初次訪問時她的首選位置,然後爲未來訪問設置永久性cookie。這是我經常從我有多個地點的企業的經歷中看到的方法。我發現它很常見。它還可以防止用戶在旅行時感到沮喪。

正如我確信你知道的,在PHP或JavaScript中設置cookie非常簡單。

如您所述,您的其他選項是使用用戶的IP或請求地理位置批准。