Мне нужен небольшой учебник, как определить город или страну IP. Я слышал, что MaxMind GeoIp
был для этого полезен. Любая помощь?определить страну и город (PHP, GeoIP Maxmind)
ответ
Для получения информации о городе вам необходимо загрузить и использовать файл GeoLiteCity.dat.
для справки код должен выглядеть следующим образом первой загрузкой класс PHP пакет http://www.maxmind.com/download/geoip/api/php/php-1.11.tar.gz вы будете нуждаться в этом файлы
geoip.inc
geoipcity.inc
geoipregionvars.php
положить их в том же каталоге ваш код, чтобы получить город и другую информацию этой
<?php
include("geoipcity.inc");
include("geoipregionvars.php");
$ip = "144.3.87.197";
$gi = geoip_open("GeoLiteCity.dat",GEOIP_STANDARD);
$record= geoip_record_by_addr($gi,$ip);
echo 'City Name'.$record->city . "\n";
geoip_close($gi);
?>
=== Метод 1: Использование онлайн-сервисов ==
- http://www.geoplugin.net/php.gp?ip=123.123.123.123
- http://ip-api.com/php/123.123.123.123
- http://ipinfo.io/123.123.123.123
- http://api.codehelper.io/ips/?callback=codehelper_ip_callback&ip=123.123.123.123
.... и т.д ...
=== Метод 2: Использование Maxmind GeoIP_V2 ==
Как я это сделал : предположим, создайте папку с именем «My_Folder» и внутри нее:
1) создать папку GeoIp2
и вставьте в него содержимое этой папки «SRC» (download).
2) положить MaxMind
папка (download, из папки «SRC»).
3) место, то есть GeoLite2-Country.mmdb
(download).
затем, в My_Folder создать example.php
файл и поместить этот код:
$user_ip='123.123.123.123';
spl_autoload_register('func888'); function func888($class){ include_once(str_replace(array('/','\\'), DIRECTORY_SEPARATOR, dirname(__file__)."/$class.php")) ;}
use GeoIp2\Database\Reader;
//you can do it for "city" too.. just everywhere change phrase "country" with "city".
try{
$reader = new Reader(dirname(__file__)."/GeoLite2-Country.mmdb");
$record = $reader->country($user_ip);
$reader->close();
$country_name = $record->raw['country']['names']['en'];
} catch (GeoIp2\Exception\AddressNotFoundException $e){ $country_name = 'not_found'; }
echo $country_name;
// RESULTS -------------- > China
P.S. другие примеры, найденные по адресу: https://github.com/maxmind/GeoIP2-php
Спасибо, это работает для меня :) –
BTW, Maxmind - это папка в My_Folder, а также GeoIp2, а файл базы данных - это места в одном и том же также. Для тех, кто разбирается в этом. – Brana
вы также можете добавить http://api.ipinfodb.com/v3/ip-city/?key=
- 1. maxmind free geoip DB возвращает неправильную страну
- 2. Импорт MaxMind GeoLite2 Город
- 3. php maxmind geoip exception ip
- 4. Maxmind GeoIP Страна/Город MySQL с открытым исходным кодом Альтернатива
- 5. php country dropdown от maxmind geoip
- 6. Joomla GEOIP Maxmind redirect loop
- 7. База данных GeoIP от MaxMind
- 8. PHP Получение местоположения с IP-адреса MaxMind GEOIP
- 9. Как определить страну и город пользователя, обращающегося к вашему сайту?
- 10. Получить страну и город с HTTPS
- 11. geoIP найти страну от ASP.NET
- 12. Как получить страну и город, используя IP-адрес в PHP
- 13. Получение местоположения из бинарного файла geoip maxmind
- 14. Как исправить эту проблему перенаправления MaxMind GeoIP?
- 15. Показать Maxmind Geoip2 Показать страну, город, регион и интернет-провайдер с Javascript
- 16. MaxMind GeoIP City Returning Неправильный Lat Longs
- 17. Ip к преобразованию геолокации, как maxmind geoip
- 18. using maxmind geoip in spark serialized
- 19. Проблема с кодировкой города Maxmind Geoip
- 20. Java Проблема компиляции MaxMind GeoIP LookupService класс
- 21. Maxmind GeoIP База данных не открыта
- 22. Как извлечь страну и город из MKLocalSearchCompletion?
- 23. Как проехать город и страну до геокода
- 24. карта, предоставляющая страну, город и улицу
- 25. Обратный геокодирование: Получить город и страну
- 26. выберите страну и город любым способом
- 27. Карты API получают город и страну
- 28. MaxMind/GeoIP Ошибка вызова Класс местоположения
- 29. Как получить город и страну через IP-адрес в PHP
- 30. Получение поддержки IPv6 с php5-GeoIP и базы данных Maxmind
вы должны добавить geoip_close ($ gi); в конце или вы получите fseek(): 4 не является допустимым сообщением об ошибке ресурса потока –