本文实例讲述了帝国cms根据ip跳转到不同的页面的方法。分享给大家供大家参考。

具体实现代码如下:

代码如下:

<?php //php获取ip的算法
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];
//echo $user_IP;
?>
登录后复制

推荐学习《帝国cms教程》

上述方法获得客户端IP地址后,再传入convertip函数转化为真实地址,convertip($ip)函数代码如下:

代码如下:

//===================================
// 功能:IP地址获取真实地址函数
// 参数:$ip - IP地址
//===================================
function convertip($ip) {
//IP数据文件路径
$dat_path = 'QQWry.dat';
//检查IP地址
if(!ereg("^([0-9]{1,3}.){3}[0-9]{1,3}$", $ip)){
return 'IP Address Error';
}
//打开IP数据文件
if(!$fd = @fopen($dat_path, 'rb')){
return 'IP date file not exists or access denied';
}
//分解IP进行运算,得出整形数
$ip = explode('.', $ip);
$ipNum = $ip[0] * 16777216 + $ip[1] * 65536 + $ip[2] * 256 + $ip[3];
//获取IP数据索引开始和结束位置
$DataBegin = fread($fd, 4);
$DataEnd = fread($fd, 4);
$ipbegin = implode('', unpack('L', $DataBegin));
if($ipbegin $ipNum || $ip2num $ipNum) {
$EndNum = $Middle;
continue;
}
//取完上一个索引后取下一个索引
$DataSeek = fread($fd, 3);
if(strlen($DataSeek) 
登录后复制

使用时通过convertip函数根据IP地址获取真实地址,再通过如下js代码实现跳转功能:

代码如下:

var sf='';//此处的sf变量可保存PHP函数获取到的真实地址
if(sf.indexOf("香港")>=0){
[removed].href="http://www.****.com/?香港";
}
else if(sf.indexOf("广东省")>=0){
[removed].href="http://www.****.com/?广东";
}
登录后复制

希望本文所述对大家的帝国CMS建站有所帮助。

以上就是深入帝国CMS根据ip跳转到不同的页面的方法的详细内容,更多请关注慧达安全导航其它相关文章!

点赞(0)

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部