dedecms注册中文会员无法打开空间的解决方法

dedecms注册中文会员无法打开空间的解决方法,第1张

dedecms注册中文会员无法打开空间的解决方法

中文申请注册时vip会员室空打不开的问题,因为我很烦,所以解决了。让我们分享一下,嗯?

其实归根结底还是字符编码转换的难题。

由于汉字没有正确区分uid值,导致无法识别客户,“您浏览的客户很可能已经被删除了!”错误的

方式
是在php完成之前,在“member\config.php”文档的末尾添加isUTF8($str)函数

复制以下代码:
FunctionISUTF8($str){
$length=strlen
for($I=0;$i<$长度;$I){
$high=ord($str{$I});
if(($high==0xc0)||($high==0xC1)){
返回false
}elseif($high<;0x80){
继续;
}elseif($high<;0xc0){
返回false
}elseif($high<;0xE0){
if($I>;=$length)
返回true
elseif(($str{$I}&;"\xC0")=="\X80")
继续;
}elseif($high<;0xf0){
if($I>;=$length){
返回true
}elseif(($str{$I}&;"\xC0")=="\X80"){
if($I>;=$length)
返回true
elseif(($str{$I}&;"\xC0")=="\X80")
继续;
}
}elseif($high<;0xF5){
if($I>;=$length){
返回true
}elseif(($str{$I}&;"\xC0")=="\X80"){
if($I>;=$length){
返回true
}elseif(($str{$I}&;"\xC0")=="\X80"){
if($I>;=$length)
返回true
elseif(($str{$I}&;"\xC0")=="\X80")
继续;
}
}
}
返回false
}
返回true
}

然后更改“member\index.php”中的代码:将

复制代码编码如下:
$tmpstr=@GB2utf8($uid);
$tmpstr2=@utf82GB($tmpstr);
if($tmpstr2==$uid)$uid=$tmpstr;

改为

复制以下代码:
if(!ISUTF8($uid))$uid=@GB2utf8($uid);

解决问题。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/773495.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存