【发布时间】:2011-08-23 07:44:07
【问题描述】:
我想在我的 php 网站中显示当前位置的天气。是否可以获取客户端计算机的当前位置(纬度、经度)。
或者我们还能用天气做什么?
谢谢
【问题讨论】:
标签: php geolocation
我想在我的 php 网站中显示当前位置的天气。是否可以获取客户端计算机的当前位置(纬度、经度)。
或者我们还能用天气做什么?
谢谢
【问题讨论】:
标签: php geolocation
如果您使用的是使用地理定位 api 的较新浏览器版本之一,您可以使用 javascript 来查找纬度和经度,如下所示:
if(navigator.geolocation) {
browserSupportFlag = true;
navigator.geolocation.getCurrentPosition(function(position) {
var latitude = position.coords.latitude;
var longitude = position.coords.longitude;
}, function() {
alert("Geolocation Failed");
}
【讨论】:
latitude 和longitude。我需要在 ajax 响应中发送这两个变量。
您可以根据 IP 地址估计位置 - 如果您提供天气服务,您可以使用 MaxMind.com 将位置精确到适当的水平 - MaxMind.com 提供数据库和 API 以基于 API 获取位置。
注意 - 对于公司网络上的用户,位置通常是错误的。我的公司网络将我安排在法国或亚特兰大,即使我在英国。在公司网络之外,它的准确度令人不安。
如果您需要更准确的信息(例如基于 WiFi 或 GPS 的位置),请使用 HTML5 Geo Location API - 关于这个主题已经有很多关于 SO 的好答案(例如来自 Simnom 的答案)。
【讨论】: