php 来访国内外IP判断代码并实现页面跳转
作者:bea
我大概构思了一下,有两个方案: 1. Javascript判断来访者的浏览器语言,如果是中文系统,自然使用者都是中国人,跳中文网站; 如果是非中文系统,默认使用者非中国人,跳英文网站。 优点:判断反映速度快。 缺点:不准确,有可能中国用户喜欢用英文版系统,或者外国人使用中文系统的情况。 代码 <script type="text/javascript" language="javascript"> var Browser_Agent=navigator.
我大概构思了一下,有两个方案:
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,选择哪种就看你的具体需求了。
有用 | 无用
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 多线程上下文中安全写文件实现代码
- PHP 获取目录下的图片并随机显示的代码
- phpMyAdmin链接MySql错误 个人解决方案
- php 需要掌握的东西 不做浮躁的人
- php 文章采集正则代码
- PHP array_push 数组函数
- PHP simple_html_dom.php+正则 采集文章代码
- 在PHP中检查PHP文件是否有语法错误的方法
- php 常用类整理
- PHP 源代码压缩小工具
- php 8小时时间差的解决方法小结
- PHP 分页原理分析,大家可以看看
- c#中的实现php中的preg_replace
- php 空格,换行,跳格使用说明
- PHP 抓取新浪读书频道的小说并生成txt电子书的代码
- PHP strtotime函数详解
- php 日期时间处理函数小结
- php 计算两个时间戳相隔的时间的函数(小时)