php 来访国内外IP判断代码并实现页面跳转


Posted in PHP onDecember 18, 2009

我大概构思了一下,有两个方案:

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的安全
Oct 09 PHP
Php Mssql操作简单封装支持存储过程
Dec 11 PHP
关于初学PHP时的知识积累总结
Jun 07 PHP
解析PHP可变函数的经典用法
Jun 20 PHP
PHP树的深度编历生成迷宫及A*自动寻路算法实例分析
Mar 10 PHP
PHP实现简单实用的验证码类
Jul 29 PHP
使用phpexcel类实现excel导入mysql数据库功能(实例代码)
May 12 PHP
基于thinkPHP框架实现留言板的方法
Oct 17 PHP
PHP 接入微信扫码支付总结(总结篇)
Nov 03 PHP
Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
Oct 11 PHP
php遍历目录下文件并按修改时间排序操作示例
Jul 12 PHP
swoole锁的机制代码实例讲解
Mar 04 PHP
php jquery 实现新闻标签分类与无刷新分页
Dec 18 #PHP
PHP XML操作类DOMDocument
Dec 16 #PHP
PHP下编码转换函数mb_convert_encoding与iconv的使用说明
Dec 16 #PHP
php生成xml简单实例代码
Dec 16 #PHP
PHP 基本语法格式
Dec 15 #PHP
php遍历目录viewDir函数
Dec 15 #PHP
php csv操作类代码
Dec 14 #PHP
You might like
可快速识别放射性物质-国外大神教你diy一个开放式辐射探测器
2020/03/12 无线电
php下的权限算法的实现
2007/04/28 PHP
PHP的关于变量和日期处理的一些面试题目整理
2015/08/10 PHP
fsockopen pfsockopen函数被禁用,SMTP发送邮件不正常的解决方法
2015/09/20 PHP
php实现在新浪云中使用imagick生成缩略图并上传的方法
2016/09/26 PHP
Laravel框架实现多个视图共享相同数据的方法详解
2019/07/09 PHP
Thinkphp5.0框架视图view的循环标签用法示例
2019/10/12 PHP
动态载入/删除/更新外部 JavaScript/Css 文件的代码
2010/07/03 Javascript
使用jquery mobile做幻灯播放效果实现步骤
2013/01/04 Javascript
按下Enter焦点移至下一个控件的实现js代码
2013/12/11 Javascript
JQuery 在线引用及测试引用是否成功
2014/06/24 Javascript
jQuery 选择器详解
2015/01/19 Javascript
javascript实现简单查找与替换的方法
2015/07/22 Javascript
JavaScript限定范围拖拽及自定义滚动条应用(3)
2017/05/17 Javascript
vue实现样式之间的切换及vue动态样式的实现方法
2017/12/19 Javascript
JQuery判断radio单选框是否选中并获取值的方法
2019/01/17 jQuery
layer.confirm点击第一个按钮关闭弹出框的方法
2019/09/09 Javascript
如何利用node.js开发一个生成逐帧动画的小工具
2019/12/01 Javascript
关于pip的安装,更新,卸载模块以及使用方法(详解)
2017/05/19 Python
Python单体模式的几种常见实现方法详解
2017/07/28 Python
Python3 中文文件读写方法
2018/01/23 Python
Python编程实现的简单神经网络算法示例
2018/01/26 Python
python实现Decorator模式实例代码
2018/02/09 Python
python3监控CentOS磁盘空间脚本
2018/06/21 Python
为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)
2019/04/06 Python
解决tensorflow/keras时出现数组维度不匹配问题
2020/06/29 Python
纯css3实现的动画按钮的实例教程
2014/11/17 HTML / CSS
美国东北部户外服装和设备零售商:Eastern Mountain Sports
2016/10/05 全球购物
优质美利奴羊毛袜,不只是徒步旅行:Darn Tough Vermont
2018/11/05 全球购物
英国外籍人士的在线超市:British Corner Shop
2019/06/03 全球购物
澳大利亚优惠网站:Deals.com.au
2019/07/02 全球购物
MySQL面试题
2014/01/12 面试题
大一新生军训时的自我评价分享
2013/12/05 职场文书
中医专业职业生涯规划书范文
2014/01/04 职场文书
党支部书记四风问题整改措施
2014/09/24 职场文书
mysql使用FIND_IN_SET和group_concat两个方法查询上下级机构
2022/04/20 MySQL