![](/img/trans.png)
[英]How to obtain accurate latitude and longitude of user machine based on IP address
[英]How to obtain latitude and longitude of a user by IP address or pinpoint location
我想通过php脚本获取计算机用户的地理位置(经度和纬度)。 我正在使用这个
<?php
// Get lat and long by address
$address = $dlocation; // Google HQ
$prepAddr = str_replace(' ','+',$address);
$geocode=file_get_contents('http://maps.google.com/maps/api/geocode/json?address='.$prepAddr.'&sensor=false');
$output= json_decode($geocode);
$latitude = $output->results[0]->geometry->location->lat;
$longitude = $output->results[0]->geometry->location->lng;
?>
但问题是,这使用真正的地址 ,我只是希望用户登录,询问他是否有权跟踪他(允许位置)以及他是否接受获得所需的值(经度和纬度)。 这可能是由一个IP地址或另一种方式来找出他的位置,但事情是,我想这个方法是pratically无瑕关于代理和fakies。 有关如何做到这一点的任何想法? 非常感谢你!
我认为这就是你想要的。简单易用。感谢HTML5 在这里看到来源
<html>
<body>
<p id="demo">Click the button to get your coordinates:</p>
<button onclick="getLocation()">Try It</button>
<script>
var x=document.getElementById("demo");
function getLocation()
{
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showPosition);
}
else{x.innerHTML="Geolocation is not supported by this browser.";}
}
function showPosition(position)
{
x.innerHTML="Latitude: " + position.coords.latitude +
"<br>Longitude: " + position.coords.longitude;
}
</script>
</body>
</html>
下载geoip.inc - http://www.maxmind.com/download/geoip/api/php-20120410/geoip.inc,geoipcity.inc - http://www.maxmind.com/download/geoip/api/php -20120410 / geoipcity.inc ,geoipregionvars.php - http://www.maxmind.com/download/geoip/api/php-20120410/geoipregionvars.php ,
GeoLiteCity.dat - http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz请将GeoLiteCity.dat.gz转换为GeoLiteCity.dat并输入geoip命名文件夹
include("application/libraries/geoip/geoipcity.inc");
include("application/libraries/geoip/geoipregionvars.php");
$giCity = geoip_open("application/libraries/geoip/GeoLiteCity.dat", GEOIP_STANDARD);
$ip =$_SERVER['REMOTE_ADDR'];
$record = geoip_record_by_addr($giCity, $ip);
echo "Getting Country and City detail by IP Address <br /><br />";
echo "IP: " . $ip . "<br /><br />";
echo "Country Code: " . $record->country_code . "<br />" .
"Country Code3: " . $record->country_code . "<br />" .
"Country Name: " . $record->country_name . "<br />" .
"Region Code: " . $record->region . "<br />" .
"Region Name: " . $GEOIP_REGION_NAME[$record->country_code][$record->region] . "<br />" .
"City: " . $record->city . "<br />" .
"Postal Code: " . $record->postal_code . "<br />" .
"Latitude: " . $record->latitude . "<`enter code here`br />" .
"Longitude: " . $record->longitude . "<br />" .
"Metro Code: " . $record->metro_code . "<br />" .
"Area Code: " . $record->area_code . "<br />" ;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.