Как получить город и страну через IP-адрес в PHP
Я пытаюсь сделать журнал пользователей, направляющихся на мой сайт. Я хочу сохранить их IP-адреса, а также информацию о городе и стране.
Заранее спасибо.
4 ответа
Вы можете получить IP от $_SERVER['REMOTE_ADDR']
, Чтобы узнать местоположение, вам нужно будет найти какой-нибудь сервис, который обеспечивает поиск и проверить IP, который вы только что собрали.
Вы также можете рассмотреть возможность регистрации в Google Analytics.
Попробуйте использовать базу данных MaxMind GeoIP, и я считаю, что это лучшее решение, которое доступно бесплатно. У него есть набор методов для извлечения города и страны по IP-адресу и для получения ip просто используйте: $_SERVER['REMOTE_ADDR']
Я думаю, вы должны пойти на Google Analytics, все эти данные вы получите оттуда. В противном случае для IP-адреса вы можете использовать этот скрипт
function getIP() {
$ip;
if (getenv("HTTP_CLIENT_IP"))
$ip = getenv("HTTP_CLIENT_IP");
else if(getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
else if(getenv("REMOTE_ADDR"))
$ip = getenv("REMOTE_ADDR");
else
$ip = "UNKNOWN";
return $ip;
}
& для названия страны
http://geoip.wtanaka.com/cc/$ipaddr
это вернет ISO код страны.
Вводят ли пользователи свой город и страну? Если да, то легко сохранить данные в базу данных.
Или вы хотите отслеживать их по IP? Если этот - загрузите / купите базу данных стран по ip с http://www.ip2country.net/download.html и поместите только IP в базу данных.