2010-12-06 135 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 /位置路由的信息。

相关问题