php - IP 地址转换为距特定邮政编码的距离

标签 php javascript mysql geolocation

我想做的是能够获取用户的 IP 地址并辨别它离我的固定位置大约有多少英里。我通过使用服务或数据库意识到我能够找到城市和邮政编码,但我还想找出用户 ZIP 和我的 ZIP 之间的大致距离。

我看到一个服务和数据库可以从用户 IP 获取 zip /城市/国家/地区。我还使用了一些 PHP 类来获取从一个邮政编码到另一个邮政编码的距离。假设我可以使用一个数据库获取 zip,另一个数据库比较两个 zip 之间的距离,但这似乎非常耗费资源(至少 2 个查询加上处理)。

如果用户在 100 英里左右(基于 IP)内,我只想展示博物馆展览的广告。如果不是,我不会展示它,因为它们似乎离得太远了。

有没有更简单的方法来完成这个?

此外,我不希望浏览器询问用户我是否可以通过使用新的 HTML5 内容在我的应用程序中使用他们的地理位置。我宁愿这一切都在没有基于位置的感知(和用户选择加入)的情况下发生在幕后,除非有压倒性的理由使用它。

我愿意接受任何解决方案,但希望能在 PHP/MYSQL/jQuery/Javascript 领域找到解决方案。

谢谢

最佳答案

我的公司使用了一项名为“邮政编码服务”的服务。它位于 https://www.zipcodeservices.com .它会完成您在问题中突出显示的所有内容。

  1. 您可以获得 2 个邮政编码之间的距离。

  2. 您可以传递一个 IP 地址和一个整数作为半径,它会为您提供该 IP 地址半径范围内的所有邮政编码。

我们实际上使用邮政编码服务 IP 地址和邮政编码服务向我们的网站浏览者展示地理定位广告。

很棒的是它都是基于服务的(Rest/JSON、XML 或 SOAP - 由您选择)而且它也很便宜 - 大约每月 15 美元。

关于php - IP 地址转换为距特定邮政编码的距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13077384/

相关文章:

PHP PDO,插入查询后返回值对象

php - Nginx Laravel 4 url​​ 查询重写

javascript - Chrome最近打破了在使用innerText设置的文本区域中复制换行符的问题

mysql - dvdmart生成的发票pdf在哪里可以修改

php - 使用 jquery 过滤组合框

php - Mysql仅限制某一列的空行

php - Laravel - 临时存储数据

javascript:匿名函数和声明函数有什么区别?

javascript - 如何通过变量中的id获取div的文本

PHP/MySQL 时区说明