2010-12-06 131 views
6

什麼是最新的,準確的,交鑰匙的代碼注入頁面,自動閱讀用戶的IP並吐出他們的城市...在這個頁面上,我們借用goingtorain.com我希望它顯示...的(動態市)3英里顯示位置最簡單的方法?

http://www.drillavailable.neighborrow.com/

+0

您是否在使用數據庫? – Flipster 2010-12-06 04:20:37

+0

寧願使用第三方小部件或有自己的數據庫的東西,只是在一個乾淨的輸入/輸出做一切......但是我們有一個數據庫,如果這是唯一的方法來存儲IP然後讀取它並輸出位置 – adam 2010-12-06 04:33:04

回答

6

我們一直在尋找的另一個使用是http://www.maxmind.com/app/geolitecity。看起來相當簡單的安裝和開放源代碼/免費與apis爲最流行的語言。

除了玩它5分鐘,沒有做過很多,但看起來很有前途。

4

內我會用位置感知瀏覽去。看看W3C GeoLocation API

例如,嘗試Google Gears Geolocation module

這些技術不僅可以通過查看IP地址(可以有200km的偏移量),還可以通過對來自附近無線接入點的SSID信息進行三角測量來進行地理定位,這可以非常精確。

一旦你有(lon,lat)座標,它只是調用一些web服務來獲得最近的城市名稱的問題。

0

是的,您只需要使用google.loader命名空間中的ClientLocation對象。總的來說,整個代碼是。

<script src="http://www.google.com/jsapi" language="javascript"></script> 
<script language="javascript"> 
if (google.loader.ClientLocation != null) { 
    alert(google.loader.ClientLocation.address.city); 
} else { 
    alert("Not found"); 
} 
</script> 

可用的屬性是

  • google.loader.ClientLocation.latitude
  • google.loader.ClientLocation.longitude
  • google.loader.ClientLocation.address.city
  • 谷歌.loader.ClientLocation.address.country
  • google.loader.ClientLocation.address.country_code
  • google.loader.ClientLocation.address.region
1

我會選擇在http://ipinfodb.com定位器API,您可以通過XML或JSON訪問它,發送您的API密鑰和一個IP,它會返回城市,州,郵政編碼,國家等。然後,您可以用您選擇的語言解析結果。它是實現這一點最簡單的方法,而不需要實際存儲任何有關IP /位置路由的信息。

相關問題