Как определить город по его ip-адресу
Идем на сайт sypexgeo.net
Скачиваем: Sypex Geo для PHP и Sypex Geo City (utf-8)
1 2 3 4 5 6 7 8 9 |
<?php require_once('geoip/SxGeo.php'); $ip = $_SERVER["REMOTE_ADDR"]; $SxGeo = new SxGeo('geoip/SxGeoCity.dat', SXGEO_BATCH | SXGEO_MEMORY); $country = $SxGeo->getCityFull($ip); $client_city = $country['city']['name_ru']; $client_region = $country['region_name']; echo $client_city; ?> |
geoip — папка на сервере. В нее необходимо поместить скачанные файлы.
В переменной $client_city будет город, соответствующий IP.
Если данные определяются неверно, необходимо добавить после создания объекта
1 |
$country = $SxGeo->getCityFull($ip); |
строку
1 |
mb_internal_encoding('8bit'); |