php程序 js判断ip地区根据不同ip输出不同内容(商务通代码)
展开全部
不建议使用js进行这个处理,你这样做的话完整过程为
1. 用户访问php页面
2. 服务端输出html
3. 浏览器运行js检查ip所属区域
4. ajax方式提交区域信息给服务器
5. 服务器返回查询结果
6. js将查询结果显示到当前页面
你想想这要多长时间。因此最好是php端直接判断区域,然后直接查询并输出就行了。
提供一个php写的函数,如果有用望采纳
function getCityByUserIp() {
$ip = false;
if (isset($_SERVER)){
if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
} else if (isset($_SERVER["HTTP_CLIENT_IP"])) {
$ip = $_SERVER["HTTP_CLIENT_IP"];
} else {
$ip = $_SERVER["REMOTE_ADDR"];
}
} else {
if (getenv("HTTP_X_FORWARDED_FOR")){
$ip = getenv("HTTP_X_FORWARDED_FOR");
} else if (getenv("HTTP_CLIENT_IP")) {
$ip = getenv("HTTP_CLIENT_IP");
} else {
$ip = getenv("REMOTE_ADDR");
}
}
if (false === $ip) {
return false;
}
$file = fopen('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=' . $ip, 'r');
$content = fread($file, 1024);
fclose($file);
if (! preg_match("/^var remote_ip_info = (\\{[^\\}]+\\});$/", $content, $_match)) {
return false;
}
$ipInfo = json_decode($_match[1]);
return $ipInfo;
}
返回的数组中包括 country, province, city等,如果返回false表示无法获得ip或该ip没有在大陆地区匹配的记录(港澳台似乎有province,但是没有city)。
Storm代理
2023-07-25 广告
2023-07-25 广告
StormProxies是一家提供动态代理服务器服务的企业,旨在帮助用户更好地管理网络访问和安全。以下是一些关于StormProxies的IP动态代理服务的特点:1. 高匿名性:StormProxies的动态代理服务器具有高匿名性,可以有效...
点击进入详情页
本回答由Storm代理提供
展开全部
1、获取用户的IP
2、判断IP属地,这里推荐一个工具:淘宝IP地址库
3、输出
2、判断IP属地,这里推荐一个工具:淘宝IP地址库
3、输出
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<script src="http://counter.sina.com.cn/ip" type="text/javascript" charset=gb2312></script>
<script>
var sf=ILData[2];
if(sf.indexOf("北京")>=0){
window.location.href="URL";
}
else if(sf.indexOf("河北")>=0){
window.location.href="URL";
}
else if(sf.indexOf("天津")>=0){
window.location.href="URL"; //你也可以自己定义成文本内容
}
</script>
<script>
var sf=ILData[2];
if(sf.indexOf("北京")>=0){
window.location.href="URL";
}
else if(sf.indexOf("河北")>=0){
window.location.href="URL";
}
else if(sf.indexOf("天津")>=0){
window.location.href="URL"; //你也可以自己定义成文本内容
}
</script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询