2013-03-11 33 views
1

在我的页面中,我使用了查找给定IP地址的Geolocation的功能。这将返回邮政编码特定位置的结果。查找50英里范围内的给定I​​P地址的准确位置

但这个邮政编码是不准确的。我从编码和真实位置获得的邮编差异大约超过200英里。我从ip2location网站使用以下代码。

require_once('ip2location.class.php'); 

$ip = new ip2location; 
$ip->open('./databases/IP-COUNTRY-REGION-CITY-LATITUDE-LONGITUDE-ZIPCODE-TIMEZONE-ISP-DOMAIN-NETSPEED-AREACODE-WEATHER-MOBILE-SAMPLE.BIN'); 

$record = $ip->getAll('50.178.183.243'); 

echo '<b>IP Address:</b> ' . $record->ipAddress . '<br>'; 
echo '<b>IP Number:</b> ' . $record->ipNumber . '<br>'; 
echo '<b>Country Short:</b> ' . $record->countryShort . '<br>'; 
echo '<b>Country Long:</b> ' . $record->countryLong . '<br>'; 
echo '<b>Region:</b> ' . $record->region . '<br>'; 
echo '<b>City:</b> ' . $record->city . '<br>'; 
echo '<b>ISP/Organisation:</b> ' . $record->isp . '<br>'; 
echo '<b>Latitude:</b> ' . $record->latitude . '<br>'; 
echo '<b>Longitude:</b> ' . $record->longitude . '<br>'; 
echo '<b>Domain:</b> ' . $record->domain . '<br>'; 
echo '<b>ZIP Code:</b> ' . $record->zipCode . '<br>'; 
echo '<b>Time Zone:</b> ' . $record->timeZone . '<br>'; 
echo '<b>Net Speed:</b> ' . $record->netSpeed . '<br>'; 
echo '<b>IDD Code:</b> ' . $record->iddCode . '<br>'; 
echo '<b>Area Code:</b> ' . $record->areaCode . '<br>'; 
echo '<b>Weather Station Code:</b> ' . $record->weatherStationCode . '<br>'; 
echo '<b>Weather Station Name:</b> ' . $record->areaCode . '<br>'; 
echo '<b>MCC:</b> ' . $record->mcc . '<br>'; 
echo '<b>MNC:</b> ' . $record->mnc . '<br>'; 
echo '<b>Mobile Brand:</b> ' . $record->mobileBrand . '<br>'; 
?> 

我试过在这么多的网站编码如

但我没有得到ŧ他的实际结果。在给定IP地址的上述网站中找不到准确的邮政编码。任何人都可以帮助我解决这个问题。感谢您阅读并提前解决此问题。

+1

您是否尝试过使用[Geocoder](http://geocoder-php.org/)? – j0k 2013-03-11 12:35:14

+0

不,我没有看到Geocoder – Rithu 2013-03-11 12:36:37

回答

5

这是朦胧的设计,它没什么可以轻松修复的。基于IP的地理位置服务只能使用他们从服务器到目标IP的各个点所猜测的位置信息。 (当您在控制台上执行traceroute <targetip>时,您可以看到这些点)。确切的IP地理位置取决于用户的ISP架构,结果可能是方式在某些地区关闭,但在其他地区(尤其是城市)非常确切。

如果您认真需要确切的地理位置,请使用client-side HTML 5 geolocation。但是,这需要用户的同意,并且如果客户端设备没有GPS,也可能不精确。

+0

哦!谢谢你的伟大答案。我会尝试客户端的HTML 5地理位置 – Rithu 2013-03-11 12:42:34

+0

但它显示“寻找您的位置:失败”像那 – Rithu 2013-03-11 12:47:21

+0

@Rithu那么你的设备可能没有任何方法来确定它的位置。 [为什么html5地理位置无法获得结果?](http://stackoverflow.com/q/13109696) – 2013-03-11 13:02:46

相关问题