Здравствуйте Гость!


Запомнить.
Авто. вход.
Забыли пароль?
Регистрация

ПОДПИСКА Подписавшись по E-mail, Вы будете получать уведомления о новых статьях к себе на почту.
Подписатся на почтовую рассылку на сайте astranar.ru
Подписаться



ДОБАВЛЯЙТЕСЬ В ДРУЗЬЯ Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте на стене моего аккаунта.
Мой аккаунт Вконтакте
Мой аккаунт
Главная - PHP - Информация о IP-адресе пользователя через PHP


Информация о IP-адресе пользователя через PHP


Информация о IP-адресе пользователя через PHP, узнать информацию о чужом ip адресе

В данной статье я расскажу как узнать где находится пользователь Ip адреса географически, с помощью стороннего сервиса. Скрипт покажет вам обладателя ip адреса с точностью до тысячных долей широты и долготы.

Вообще скрипт полезен при регистрации новых пользователей или для того чтобы поймать злоумышленника, который рассылает спам через ваш сайт путем комментирования на сайте. В общем область применения обширна.

Вообще скрипт построен на Супер глобальном массиве $_SERVER

Для работы нам понадобится - Библиотека PHP Simple HTML DOM Parser - (скачать)

1. Создаем файл ip_info.php в корень папки сайта.

2. В папке где находится файл ip_info.php, создаем папку libs и распаковываем содержимое скачанного выше архива simplehtmldom.zip. У вас должно быть такая иерархия /libs/simplehtmldom

В ip-info.php пишем:

// Скрипт: Подробная информация о IP пользователя
// Источник: http://astranar.ru

if(!isset($_GET['ip'])) {// IP нужного нам пользователя
// Если IP не был задан нами в GET, получаем информацию о нашем IP

$ip = $_SERVER['REMOTE_ADDR'];
}
else {
// Ввели нужный нам IP, получаем информацию
$ip = addslashes($_GET['ip']);
}
// Адрес донора информации о IP
$url = "http://whatismyipaddress.com/ip/". $ip;
// Браузер который увидет донор
$userAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)";
// При помощи Curl получим данные о IP
$ch = curl_init();
$timeout = 5;
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);
$Whatismyip = curl_exec($ch);
curl_close($ch);
// Подключаем библиотеку PHP Simple HTML DOM Parser
include_once ("libs/simplehtmldom/simple_html_dom.php");
$html = str_get_html($Whatismyip);
// Парсируем HTML
foreach($html->find('td') as $element) {
$Data[] = trim($element->innertext);
}
// Финальные данные
// Обрабатываем данные пользователя

$host = strip_tags($Data[2]." - ".$Data[3]);
$country = strip_tags($Data[9]);
$region = strip_tags($Data[10]);
if(is_numeric($Data[11])) {$city=$Data[10];} else {$city=$Data[11];}
$city = strip_tags($city);
preg_match("#http://cdn.whatismyipaddress.com/images/flags/([a-z]+).png#", $Data[9], $match);
$flag = strtolower(substr($match[1], 0, 2));
$info = "Провайдер: ".$host.;
$info .= "Страна: ".$country.;
$info .= "Регион: ".$region.;
$info .= "Город: ".$city.;
$info .= "Код страны: ".$flag.;
$info .= "Широта: ".$Data[12].;
$info .= "Долгота: ".$Data[13].;
// Выводим данные
echo $info;
?>

Заходим по адресу - http://ваш-сайт.ru/ip-info.php?ip=ваш_ip
Можете проверить работу скрипта на моем сайте - Пример использования
Если же хотите узнать информацию о своем ip адресе просто оставьте поле пустым.
Так же кому интересно, можете побаловаться с программой Invisible IP Map
Совершенствуйтесь! Удачи=)



Просмотров страницы: 39715
Урок добавлен: 25 Ноября 2012

<<<Предыдущая статьяСледущая статья >>>

Копирование материалов разрешается только с указанием автора (Пальгов Олег) и индексируемой прямой ссылкой на сайт (https://astranar.ru/)!

Добавляйтесь ко мне в друзья ВКонтакте: https://vk.com/palgov_oleg. Если Вы хотите оценить меня и мою работу, то напишите на стене моего аккаунта ВКонтакте.

Если Вы не хотите пропустить новые материалы на сайте, то Вы можете подписаться на обновления:
Подписаться на обновления


Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Ещё статьи по php:
Управляющие конструкции в PHP
Как передать несколько значений checkbox?
Работа с массивами PHP – создание, наполнение, удаление
Sql injection или sql инъекция.


Комментарии (0)


Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.
Информация о IP-адресе пользователя через PHP
Деньги должны оборачиваться. Чем быстрее тратишь, тем больше получаешь.

Петр Капица


Вступайте в группу!