Получение текущего имени страны с использованием ip-адреса в php

У меня есть раскрывающийся список, в котором я выбираю название страны из базы данных, и я хочу выбрать текущее имя страны на основе там ip-адреса в раскрывающемся списке

Ответ 1

Используйте PHP GeoIP API. ПРИМЕЧАНИЕ. Перед использованием функций вам необходимо настроить базу данных Maxmind GeoIP API.

<select name="securityqustion"  class="securityqustion" id="security_qustion">
<?php
  // will resolve 2-character ISO country code
  $request_country = geoip_country_code_by_name($_SERVER['REMOTE_ADDR']);  

  $countries = array("DE" => "Germany", "FR" => "France", ...);  // define list
  foreach ($countries as $country_code => $country_label) {
    if ($request_country == $country_code) 
      $selected = "selected"
    else 
      $selected = "";
    echo "<option value=\"{$country_code}\" {$selected}>{$country_label}</option>\n";
  }
?>
</select>

Ответ 2

MaxMind GeoIP имеет бесплатный API для PHP для поиска какой-либо страны на основе их IP.

Ответ 3

Вам нужно будет использовать веб-службу IP Geolocation. Большинство из них оплачиваются, но они предоставляют некоторый (обычно ограниченный) свободный доступ.

Я использовал http://www.maxmind.com/ и http://ipinfodb.com/ успешно в прошлом, и у друга есть хорошие вещи, чтобы сказать о http://www.geoplugin.com/

Ответ 4

system ('traceroute'. $trace_ip_addr);//IP-адрес трассировки.