$ip = '83.149.47.116'; // IP, который будем проверять
$typeData = 'json'; // в каком виде мы получим данные. json или xml
// формируем URL для запроса
$url = "http://ru.smart-ip.net/geoip-$typeData/$ip";
// делаем запрос к API
$data = @file_get_contents($url);
// если получили данные
if($data){
// декодируем полученные данные
$dataDecode = json_decode($data);
// выводим данные
echo "Страна: " . $dataDecode->countryName . "<br/>";
echo "Код страны: " . $dataDecode->countryCode . "<br/>";
echo "Город: " . $dataDecode->city . "<br/>";
echo "Область: " . $dataDecode->region . "<br/>";
echo "Широта: " . $dataDecode->latitude . "<br/>";
echo "Долгота: " . $dataDecode->longitude . "<br/>";
echo "Часовой пояс: " . $dataDecode->timezone . "<br/>";
}else{
echo "Сервер не доступен!";
}
Выводит на Экран:
Страна:
Код страны:
Город:
Область:
Широта:
Долгота:
Часовой пояс:
Логи апача:
[Tue Apr 18 11:19:10.388594 2017] [:error] [pid 3581] [client 127.0.0.1:35456] PHP Notice: Trying to get property of non-object in /var/www/projects/geoip.com/index.php on line 16
...
[Tue Apr 18 11:19:10.388643 2017] [:error] [pid 3581] [client 127.0.0.1:35456] PHP Notice: Trying to get property of non-object in /var/www/projects/geoip.com/index.php on line 22
Если вы проверите в вашем коде переменную $data
, то обнаружите, что вы не получаете какой-либо массив данных, вместо этого вы получаете Service Temporaly Unavailable
. Собственно, если зайти по адресу http://ru.smart-ip.net/geoip-json/83.149.47.116
, итог будет таким же. Соответственно, ваш код в дальнейшем получает из json_decode($data);
$dataDecode=NULL
, ну и дальше все понятно.
Проблема с этим сервисом общая, не только у вас. Будет он в дальнейшем работать или нет - вопрос к его создателям. Пока что же у них не работает их API в принципе, ни в формате json
, ни в формате xml
.
Виртуальный выделенный сервер (VDS) становится отличным выбором
У меня есть простое приложение на андроид, которое, например, каждую минуту отправляет координаты местоположения на сервер (простой php или...
Добрый день, Сайт работает около месяца и все было нормальноНо в один прекрасный момент в БД Очистились поля uri у ресурсов с parent = 0
Помогите исправить ребятаПробовал прописать в конфиг Apache AddDefaultCharset UTF-8