5

我的问题涉及在注册期间验证/规范用户对 Country 和“City”组合的输入。理想情况下,我想要类似于询问此问题的 OkCupid ( http://www.okcupid.com/signup ) 注册页面的功能。失去对 City 输入字段的关注以某种方式验证了输入,而且它非常擅长。我尝试了澳大利亚农村的一个小镇(人口<6000)和芬兰的一个随机小镇,两者都得到了正确且快速的验证。

规范化/验证很重要,因为我想规范化用户生成的事件实体的“城市”字段,以允许与同一位置的用户进行匹配。

从应用程序逻辑的角度(我不想处理 'NYC' = 'New York City' = 'New York, New York' = 'New York' 的泥潭)和用户的角度(其他用户了解用户的位置)。

如果这有所作为,我正在使用 PHP 和 jQuery,但此时任何解决方案都比没有更有希望!

提前致谢!

编辑:解决了!Yahoo 提供 PlaceMaker API - 自由格式的位置字符串解析!每天 50,000 个请求限制:

http://developer.yahoo.com/geo/placemaker/

4

3 回答 3

2

解决了!Yahoo 提供 PlaceMaker API - 自由格式的位置字符串解析!每天 50,000 个请求限制:

http://developer.yahoo.com/geo/placemaker/

于 2010-07-12T21:42:25.593 回答
1

出于验证目的,以下站点引用了一个非常全面(且免费!)的国际城市数据库。

http://earth-info.nga.mil/gns/html/

规范化是一个更难的问题。为此,您很可能需要使用专有产品。谷歌地图可能是一种选择。

于 2010-07-09T23:36:40.507 回答
1

验证城市名称的一个好方法是将文本视为地址,并将其转换为坐标,这一过程称为地理编码。地理编码还为识别的每个位置提供附加数据,您可以使用这些数据确保其符合您的要求。

Google API 支持地理编码,每天最多可免费处理 2500 个请求

您可以使用现有的库与 API 进行交互,例如node-geocodergeocoder-php。这些库还支持一长串其他地理编码提供程序

于 2016-12-30T07:18:21.933 回答