我有一个下拉列表,我从数据库中获取国家/地区名称,我想根据下拉框中的IP地址选择当前国家/地区名称
答案 0 :(得分:2)
使用PHP GeoIP API。注意:您需要先设置Maxmind GeoIP API database才能使用这些功能。
<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>
答案 1 :(得分:0)
MaxMind GeoIP有一个免费的PHP API,用于根据他们的IP查找某人的国家/地区。
答案 2 :(得分:0)
您必须使用IP地理位置网络服务。他们中的大多数都是有偿的,但他们也提供一些(通常是有限的)免费访问。
我过去成功使用过http://www.maxmind.com/和http://ipinfodb.com/,而朋友对http://www.geoplugin.com/
有好话要说答案 3 :(得分:-2)
system(&#39; traceroute&#39;。$ trace_ip_addr); //跟踪IP地址。