3

我正在寻找使用用户的城市、州自动填充表单输入文本区域。我还需要邮政编码与表格一起传递。我不需要地图。

有什么建议么?(我更喜欢 jQuery 和/或 PHP。)

更新- 我发现了这个小 js 来获取城市、州、纬度、经度、区号等......除了它没有得到邮编。可能是因为很多城市都有多个拉链。但我所需要的只是一个来自城市的拉链……不管是哪一个,因为我正在获取半径 50 英里内的数据。那么有没有办法在下面使用这个脚本并根据它返回的数据从该位置找到一个 zip。

<html>
<head>
    <script language="JavaScript" src="http://www.geoplugin.net/javascript.gp" type="text/javascript"></script>
</head>
<body>
    <script language="Javascript"> 
document.write("Welcome to our visitors from "+geoplugin_city()+", "+geoplugin_region()+", Area code = "+geoplugin_areaCode()+", Latitude = "+geoplugin_latitude()+geoplugin_areaCode()+", Longitude = "+geoplugin_longitude()); 
    </script>
</body>
</html>

来源:地理插件

4

3 回答 3

1

您可以使用GeoLite City将用户的 IP 转换为 City、State Zip

于 2011-04-02T22:34:31.063 回答
0

没有服务器端代码就不可能做到这一点,考虑到潜在的安全风险,这很明显。但是,您可以做的是向某些服务器端脚本发出请求并让它解析用户的 IP,但是这样做有一定的缺陷 - 1.) 城市/州是您可以获得的全部,2.) 用户可以使用代理,最重要的是,IP 有时不准确。

还有 HTML5 Geolocation API:http ://html5demos.com/geo

于 2011-04-02T21:51:12.807 回答
0

有两种方法可以做到这一点。

1)服务器端使用 php 库基于 ip 进行地理定位(仅当 ISP 正确输入 ip 的地理数据时才有效)并在您喜欢的任何地方插入数据

2)使用谷歌地图的地理编码服务 来动态检索你需要的信息。

ps 我最喜欢的方式是#2 提供了更多的灵活性。

于 2011-04-02T22:26:13.633 回答