中文申请注册时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);
解决问题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)