dedecms注册中文会员无法打开空间的解决方法_dedecms_CMS教程_脚本之家

其实说到底还是个字符编码转换问题。b7X迪尔课堂自学网-|第二课堂|--(官网)

因为汉字没有在判断uid值时出现了错误,导致系统无法识别用户,所以发生了“你访问的用户可能已经被删除!”错误b7X迪尔课堂自学网-|第二课堂|--(官网)

方法是b7X迪尔课堂自学网-|第二课堂|--(官网)
在“member/config.php”文件的最后,PHP结束之前添加 isUTF8($str)函数b7X迪尔课堂自学网-|第二课堂|--(官网)

复制代码
代码如下:
b7X迪尔课堂自学网-|第二课堂|--(官网)
function isUTF8($str){b7X迪尔课堂自学网-|第二课堂|--(官网)
$length=strlen($str);b7X迪尔课堂自学网-|第二课堂|--(官网)
for($i=0;$i<$length;$i++){b7X迪尔课堂自学网-|第二课堂|--(官网)
$high=ord($str{$i});b7X迪尔课堂自学网-|第二课堂|--(官网)
if(($high==0xC0)||($high==0xC1)){b7X迪尔课堂自学网-|第二课堂|--(官网)
return false;b7X迪尔课堂自学网-|第二课堂|--(官网)
}elseif($high<0x80){b7X迪尔课堂自学网-|第二课堂|--(官网)
continue;b7X迪尔课堂自学网-|第二课堂|--(官网)
}elseif($high<0xC0){b7X迪尔课堂自学网-|第二课堂|--(官网)
return false;b7X迪尔课堂自学网-|第二课堂|--(官网)
}elseif($high<0xE0){b7X迪尔课堂自学网-|第二课堂|--(官网)
if(++$i>=$length)b7X迪尔课堂自学网-|第二课堂|--(官网)
return true;b7X迪尔课堂自学网-|第二课堂|--(官网)
elseif(($str{$i}&"/xC0")=="/x80")b7X迪尔课堂自学网-|第二课堂|--(官网)
continue;b7X迪尔课堂自学网-|第二课堂|--(官网)
}elseif($high<0xF0){b7X迪尔课堂自学网-|第二课堂|--(官网)
if(++$i>=$length){b7X迪尔课堂自学网-|第二课堂|--(官网)
return true;b7X迪尔课堂自学网-|第二课堂|--(官网)
}elseif(($str{$i}&"/xC0")=="/x80"){b7X迪尔课堂自学网-|第二课堂|--(官网)
if(++$i>=$length)b7X迪尔课堂自学网-|第二课堂|--(官网)
return true;b7X迪尔课堂自学网-|第二课堂|--(官网)
elseif(($str{$i}&"/xC0")=="/x80")b7X迪尔课堂自学网-|第二课堂|--(官网)
continue;b7X迪尔课堂自学网-|第二课堂|--(官网)
}b7X迪尔课堂自学网-|第二课堂|--(官网)
}elseif($high<0xF5){b7X迪尔课堂自学网-|第二课堂|--(官网)
if(++$i>=$length){b7X迪尔课堂自学网-|第二课堂|--(官网)
return true;b7X迪尔课堂自学网-|第二课堂|--(官网)
}elseif(($str{$i}&"/xC0")=="/x80"){b7X迪尔课堂自学网-|第二课堂|--(官网)
if(++$i>=$length){b7X迪尔课堂自学网-|第二课堂|--(官网)
return true;b7X迪尔课堂自学网-|第二课堂|--(官网)
}elseif(($str{$i}&"/xC0")=="/x80"){b7X迪尔课堂自学网-|第二课堂|--(官网)
if(++$i>=$length)b7X迪尔课堂自学网-|第二课堂|--(官网)
return true;b7X迪尔课堂自学网-|第二课堂|--(官网)
elseif(($str{$i}&"/xC0")=="/x80")b7X迪尔课堂自学网-|第二课堂|--(官网)
continue;b7X迪尔课堂自学网-|第二课堂|--(官网)
}b7X迪尔课堂自学网-|第二课堂|--(官网)
}b7X迪尔课堂自学网-|第二课堂|--(官网)
}b7X迪尔课堂自学网-|第二课堂|--(官网)
return false;b7X迪尔课堂自学网-|第二课堂|--(官网)
}b7X迪尔课堂自学网-|第二课堂|--(官网)
return true;b7X迪尔课堂自学网-|第二课堂|--(官网)
}b7X迪尔课堂自学网-|第二课堂|--(官网)
b7X迪尔课堂自学网-|第二课堂|--(官网)
然后修改“member/index.php”中的代码:将b7X迪尔课堂自学网-|第二课堂|--(官网)

复制代码
代码如下:
b7X迪尔课堂自学网-|第二课堂|--(官网)
$tmpstr = @gb2utf8($uid);b7X迪尔课堂自学网-|第二课堂|--(官网)
$tmpstr2 = @utf82gb($tmpstr);b7X迪尔课堂自学网-|第二课堂|--(官网)
if($tmpstr2==$uid) $uid = $tmpstr;b7X迪尔课堂自学网-|第二课堂|--(官网)
b7X迪尔课堂自学网-|第二课堂|--(官网)
修改为b7X迪尔课堂自学网-|第二课堂|--(官网)

复制代码
代码如下:
b7X迪尔课堂自学网-|第二课堂|--(官网)
if(!isUTF8($uid)) $uid = @gb2utf8($uid);b7X迪尔课堂自学网-|第二课堂|--(官网)
b7X迪尔课堂自学网-|第二课堂|--(官网)
问题解决。b7X迪尔课堂自学网-|第二课堂|--(官网)

扫一扫手机访问