php 来访国内外IP判断代码并实现页面跳转
投稿:mdxy-dxy
最近做了公司网站的一个需求:按来访人的IP来判断他是进中文网站还是英文网站。
我大概构思了一下,有两个方案:
1. Javascript判断来访者的浏览器语言,如果是中文系统,自然使用者都是中国人,跳中文网站;
如果是非中文系统,默认使用者非中国人,跳英文网站。
优点:判断反映速度快。
缺点:不准确,有可能中国用户喜欢用英文版系统,或者外国人使用中文系统的情况。
代码
<script type="text/javascript" language="javascript"> var Browser_Agent=navigator.userAgent; //浏览器为ie的情况 if(Browser_Agent.indexOf("MSIE")!=-1){ var a=navigator.browserLanguage; if(a !="zh-cn"){ location.href="英文网站"; } } //浏览器非ie的情况 else{ var b=navigator.language; if(b!="zh-CN"){ location.href="英文网站"; } } </script>
2.使用IP库来进行来访IP的判断
优点:判断准确。
缺点:响应速度没Javascript快。
需要引用一个PHP的IP库 ip_php.zip
我在网站头部引用jquery进行判断
<script type="text/javascript" src="/js/jquery-1.3.2.min.js"></script> <script type="text/javascript" language="javascript"> function initurl() { $.ajax({ type:"GET", url:"checkip.php", dataType:"html", data:"&time="+new Date(), cache: false, async: false, beforeSend:function(XMLHttpRequest) { }, success:function(msg) { //如果返回值为1表示访问者为中国地区的ip if(msg == 1){ //alert('I am China ip'); } else { //alert('I am not China ip'); location.href="英文网站"; } }, complete:function(XMLHttpRequest,textStatus) { }, error:function() { } }); } </script> <body onload="initurl()"> ... </body>
checkip.php页面的代码:
$userip=$_SERVER['REMOTE_ADDR']; //引用ip库的文件 把ip.zip里的全部文件放在lib目录下 include_once('/lib/iplimit.class.php'); $iplimit = new iplimit; if($iplimit->setup($userip)) { echo 1; } else { echo 2; }
两种方法都可以完美实现判断来访IP,选择哪种就看你的具体需求了。
您可能感兴趣的文章:
- php中文本数据翻页(留言本翻页)
- PHP Header用于页面跳转要注意的几个问题总结
- 一个很不错的PHP翻页类
- PHP 页面跳转到另一个页面的多种方法方法总结
- PHP 翻页 实例代码
- php 随机数的产生、页面跳转、件读写、文件重命名、switch语句
- php download.php实现代码 跳转到下载文件(response.redirect)
- PHP 长文章分页函数 带使用方法,不会分割段落,翻页在底部
- php实现的仿阿里巴巴实现同类产品翻页
- 网站页面自动跳转实现方法PHP、JSP(上)
- 网站页面自动跳转实现方法PHP、JSP(下)
- php URL跳转代码 减少外链
- PHP中根据IP地址判断城市实现城市切换或跳转代码
- php页面跳转代码 输入网址跳转到你定义的页面
- PHP跳转页面的几种实现方法详解
- 浅析php header 跳转
- php用header函数实现301跳转代码实例
- PHP 登录完成后如何跳转上一访问页面
- PHP弹出提示框并跳转到新页面即重定向到新页面
- php+js iframe实现上传头像界面无跳转
- PHP使用CURL获取302跳转后的地址实例
- 实现网页页面跳转的几种方法(meta标签、js实现、php实现)
- ThinkPHP访问不存在的模块跳转到404页面的方法
- ThinkPHP页面跳转success与error方法概述
- ThinkPHP跳转页success及error模板实例教程
- PHP翻页跳转功能实现方法