基本上,我想在页面上向人们显示本地事件。因此,如果你来自加利福尼亚州,你会得到与佛罗里达州不同的东西。我将在项目的其余部分使用php,因此php是必须的。
我更愿意获取数据,而无需向用户询问其他信息。如果我不得不要求提供更多信息,我会想要使用一个邮政编码,而不是用这个邮政编码将这个邮政编码保存到数据库中,这样我就不必再问了。
答案 0 :(得分:3)
我认为GEO IP functions会让你在90%的路上,如果不是全部的话。
答案 1 :(得分:1)
你怎么知道这个人的位置?
例如,您不能通过ISP,因为他们的ISP地址可能与用户处于不同的状态。
如果他们必须登录,那么你可以知道他们登录时的位置,但是如果他们正在旅途中而且留在其他地方,那么现在你的信息是错误的。
这将是第一个挑战。
取决于您尝试获得的细粒度将决定数据库的外观。例如,当我走在街上时,如果我正在使用移动设备,您是否可以使用我的GPS数据来确定哪个无麸质餐厅靠近我?或者它是基于城市还是大都市区?
您使用的是GPS数据吗?
您如何获得本地活动来更新您的申请?
有很多信息没有答案,能够真正给你一个好的答案。
答案 2 :(得分:1)
您是否想要猜测访客的位置?如果这是您想要的,请参阅PHP GeoIP extension或MaxMind GeoIP api。他们都使用相同的数据库,并提供免费和付费的数据库。
此方法的一个问题是IP地址无法保证准确的位置。这通常是一个很好的起点。您应该让访问者更容易纠正他们的位置。
可能更准确的方法是使用HTML5地理定位API,但这是实验性的,仅在最新的浏览器中支持。即使有浏览器支持,网站访问者也需要能够找到其位置的硬件或允许他们设置自己位置的插件。如果你走这条路线,你应该根据GeoIP结果退回。
答案 3 :(得分:0)
你可以像其他人提到的那样在地理定位数据库中查找他们的IP地址,并且正如大家所指出的那样,它并非万无一失,但它应该大多数。
您还可以看一下使用Firefox的location-aware browsing,这也不是万无一失的 - 但是当我使用它时,它确实准确地指出了我的房子。当然,这只适用于Firefox 3.0+用户,并且只有在他们点击“接受”按钮后才能使用,所以显然不是没有问题。
无论你选择哪种方式,只要确保某处有覆盖!你的方法可能会在99%的时间内起作用,但是如果我在1%的人中从未显示过正确的信息,那真的很烦人!