本文实例讲述了帝国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){ window.location.href="http://www.****.com/?香港"; } else if(sf.indexOf("广东省")>=0){ window.location.href="http://www.****.com/?广东"; }登录后复制
希望本文所述对大家的帝国CMS建站有所帮助。
以上就是深入帝国CMS根据ip跳转到不同的页面的方法的详细内容,更多请关注慧达AI工具网其它相关文章!