2016-11-28 2 views
2

Я использовал географические местоположения Google и другие ресурсы, чтобы получить местоположение пользователей также через IP, Lang и Lat.Нужно точное местоположение пользователей на моем сайте (PHP, JQuery)

Но все результаты неверны. Необходимо интегрировать детектор местоположения, как на мобильных телефонах, которые всегда точны.

Спасибо заранее.

+0

Вы пробовали 'navigator.geolocation' – progrAmmar

+0

На веб-сайте, на котором работает компьютер, местоположение может быть неточным. Потому что у него нет подключенного к нему устройства gps – Arun

+0

да, я использовал навигатор.geolocation, но места не точны. –

ответ

0

Это можно сделать, используя упаковку GeoIP2 (замененный GeoIP). Вы можете установить пакет с композитором и связать либо free database, либо приобрести более точную базу данных от MaxMind в зависимости от уровня точности, который вы хотели бы (города, страны и т. Д.).

Пример кода взяты из Github:

<?php 
require_once 'vendor/autoload.php'; 
use GeoIp2\Database\Reader; 

// This creates the Reader object, which should be reused across 
// lookups. 
$reader = new Reader('/usr/local/share/GeoIP/GeoIP2-City.mmdb'); 

// Replace "city" with the appropriate method for your database, e.g., 
// "country". 
$record = $reader->city('128.101.101.101'); 

print($record->country->isoCode . "\n"); // 'US' 
print($record->country->name . "\n"); // 'United States' 
print($record->country->names['zh-CN'] . "\n"); // '美国' 

print($record->mostSpecificSubdivision->name . "\n"); // 'Minnesota' 
print($record->mostSpecificSubdivision->isoCode . "\n"); // 'MN' 

print($record->city->name . "\n"); // 'Minneapolis' 

print($record->postal->code . "\n"); // '55455' 

print($record->location->latitude . "\n"); // 44.9733 
print($record->location->longitude . "\n"); // -93.2323 

Свободная база данных не плохо, но я бы рекомендовал покупку профессиональной базы данных, если вам это нужно, чтобы быть как можно более точным без использования GPS. Это главным образом потому, что список часто обновляется, когда блоки IP проданы и т. Д.

+0

Большое спасибо @ Kitson88 –

+0

@Paritosh Нет проблем. Не забывайте отмечать вопрос как ответ. Я бы также посоветовал также отметить ваши другие вопросы. Чтобы узнать, как работает система, просмотрите следующую страницу: http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work – Kitson88

Смежные вопросы