Получить географического расположения компьютера через IP

Программирование на PHP: Если вам нужно определить какие географическое положение для заданного IP-, так что это было легко! Com ipdetails você pode obter dados tais como país, Государство и город.

Значок

ipdetails-20121116.zip
1.77 КБ 6101 загрузки

Автор: Chetan Mendhe
Страна: Индия
Обновление: Ли Тейлор

О

С помощью класса ipdetails você pode obter detalhes sobre a origem e localização geográfica de um computador através do seu endereço IP. Dentre as principais informações, temos: Nome do país, o código do país, estado (регион), cidade, código postal, latitude, longitude, código de área, etc. Algumas informações não estão disponíveis para o Brasil.

Использование

Basta importar a classe class.ipdetails.php e instanciar o objeto da classe passando como parâmetro do construtor o “IP” que se quer obter informações. В конечном счете, obtenha a informação desejada fazendo a chamada ao respectivo método.

Пример

ipdetails.php | Arquivo criado para demonstração

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?PHP
    включить("class.ipdetails.php");
    $ИП = $_SERVER['REMOTE_ADDR'];  
    #$ip = "189.73.71.160";
    $ipdetails = Новые функции ipdetails($ИП); 
    $ipdetails->scan();
    Эхо "<(b)>IP:</(b)>        ".$ИП                        ."<Br />"; 
    Эхо "<(b)>Страна:</(b)>      ".$ipdetails->get_country()  ."<Br />";
    Эхо "<(b)>Состояние:</(b)>    ".$ipdetails->get_region()   ."<Br />";
    Эхо "<(b)>Город:</(b)>    ".$ipdetails->get_city()     ."<Br />";
    Эхо "<(b)>Широта:</(b)>  ".$ipdetails->get_latitude() ."<Br />";
    Эхо "<(b)>Долгота:</(b)> ".$ipdetails->get_longitude()."<Br />";
    Эхо "<(b)>Código país:</(b)> ".$ipdetails->get_countrycode()."<Br />";
    Эхо "<(b)>Código continente:</(b)> ".$ipdetails->get_continentcode()."<Br />";
    Эхо "<(b)>Código moeda:</(b)> ".$ipdetails->get_currencycode()."<Br />";
    Эхо "<(b)>Símbolo moeda:</(b)> ".htmlspecialchars_decode($ipdetails->get_currencysymbol())."<Br />";
    Эхо "<(b)>Cotação moeda (dólar):</(b)> ".$ipdetails->get_currencyconverter()."<Br />";    
?>

Пример | Приведенный выше пример приведет следующие выходные

IP: 189.73.71.160
Страна: Бразилия
Состояние: Santa Catarina
Город: Blumenau
Широта: -26.933300018311
Долгота: -49.049999237061
Código país: BR
Código continente: SA
Código moeda: BRL
Símbolo moeda: R$
Cotação moeda (dólar): 1.8889999377
Всего просмотров: 14831

12 Комментарии по “Получить географического расположения компьютера через IP

  1. Фернандо сказал:

    Continua dando erro quando testo no servidor PHP os arquivos disponiveis:

    Notice: Use of undefined constant geoplugin_countryNameassumed ‘geoplugin_countryName’ в C:\xampp\htdocs\sap\class.ipdetails.php on line 116

    Notice: Undefined index: geoplugin_countryName in C:\xampp\htdocs\sap\class.ipdetails.php on line 116
    Страна:

    Notice: Use of undefined constant geoplugin_regionassumed ‘geoplugin_region’ в C:\xampp\htdocs\sap\class.ipdetails.php on line 126

    Notice: Undefined index: geoplugin_region in C:\xampp\htdocs\sap\class.ipdetails.php on line 126
    Состояние:

    Notice: Use of undefined constant geoplugin_cityassumed ‘geoplugin_city’ в C:\xampp\htdocs\sap\class.ipdetails.php on line 136

    Notice: Undefined index: geoplugin_city in C:\xampp\htdocs\sap\class.ipdetails.php on line 136
    Город:

    Notice: Use of undefined constant geoplugin_latitudeassumed ‘geoplugin_latitude’ в C:\xampp\htdocs\sap\class.ipdetails.php on line 156

    Notice: Undefined index: geoplugin_latitude in C:\xampp\htdocs\sap\class.ipdetails.php on line 156
    Широта:

    Notice: Use of undefined constant geoplugin_longitudeassumed ‘geoplugin_longitude’ в C:\xampp\htdocs\sap\class.ipdetails.php on line 166

    Notice: Undefined index: geoplugin_longitude in C:\xampp\htdocs\sap\class.ipdetails.php on line 166
    Долгота:

    Notice: Use of undefined constant geoplugin_countryCodeassumed ‘geoplugin_countryCode’ в C:\xampp\htdocs\sap\class.ipdetails.php on line 96

    Notice: Undefined index: geoplugin_countryCode in C:\xampp\htdocs\sap\class.ipdetails.php on line 96
    Código país:

    Notice: Use of undefined constant geoplugin_continentCodeassumed ‘geoplugin_continentCode’ в C:\xampp\htdocs\sap\class.ipdetails.php on line 195

    Notice: Undefined index: geoplugin_continentCode in C:\xampp\htdocs\sap\class.ipdetails.php on line 195
    Código continente:

    Notice: Use of undefined constant geoplugin_currencyCodeassumed ‘geoplugin_currencyCode’ в C:\xampp\htdocs\sap\class.ipdetails.php on line 221

    Notice: Undefined index: geoplugin_currencyCode in C:\xampp\htdocs\sap\class.ipdetails.php on line 221
    Código moeda:

    Notice: Use of undefined constant geoplugin_currencySymbolassumed ‘geoplugin_currencySymbol’ в C:\xampp\htdocs\sap\class.ipdetails.php on line 230

    Notice: Undefined index: geoplugin_currencySymbol in C:\xampp\htdocs\sap\class.ipdetails.php on line 230
    Símbolo moeda:

    Notice: Use of undefined constant geoplugin_currencyConverterassumed ‘geoplugin_currencyConverter’ в C:\xampp\htdocs\sap\class.ipdetails.php on line 239
    Cotação moeda (dólar): 0

    • Фернандо, obrigado por avisar. Na verdade o código estava funcionando corretamente, só que como faltava aspas nas chaves de alguns arrays, então estava sujeito mostrar um aviso (notice) dependendo da sua configuração de erros no php.ini. В любом случае, fiz a devida correção. O que você deve atentar também é que a variável $ip precisa receber um IP válido na Internet. Se você rodar o código do arquivoexample.phpna sua máquina local (localhost) sem colocar um IP válido, logicamente $ip = $_SERVER[‘REMOTE_ADDR’] irá pegar seu IP local 127.0.0.1 e não irá funcionar. Favor baixar novamente os arquivos que postei e faça bom uso… Спасибо!

  2. GOULART сказал:

    Prezado Taylor,
    Apesar do script ser de 2011, só hoje resolvi colocá-lo em processo.
    Ates de qqr coisa gostaria de agradecer sua ajuda e dizer que fiz o download da última versão (http://www.geoplugin.net) но, conforme alguns posts anteriores a CIDADE e o ESTADO continuam sem aparecer.
    Poderia verificar?
    Aguardo seu retorno – Спасибо

    • De fato, dependendo do IP oGeopluginnão retorna a cidade e estado. Infelizmente eu precisaria encontrar um webserver free para resolver isto. A maioria dos Geolocator confiáveis cobram uma taxa mensal para entregar estas informações.

  3. Пауло Робсон сказал:

    Спасибо за размещение taylorlopes не проверял это еще, но я благодарю вас, Да благословит вас Бог брат

Оставь ответ

Ваш электронный адрес не будет опубликован. Обязательные поля отмечены *