首页 > CMS > 织梦DEDE > 正文

织梦CMS升级后出现 ?/a>或?/h3>导致网页错乱的解决方法

2024-07-12 09:08:47
字体:
来源:转载
供稿:网友
最近将织梦dedecms的版本升级了下,原来我的是V5.5,现在升级成织梦dedecmsV5.6的。但发现V5.6有一个织梦dedecmsV5.5从来没的错误。

这就是出现如?/a>或?/h3>导致页面错乱问题,如果你的站也遇到这种情况,请试试下面的方法。 
 
找到/include/common.func.php 

//中文截取2,单字节截取模式 function cn_substr($str,$slen,$startdd=0) { global $cfg_soft_lang,$cfg_is_mb,$cfg_is_iconv; //判断是否使用mb_substr if($cfg_is_mb) { if($cfg_soft_lang=='utf-8') mb_internal_encoding("UTF-8"); return mb_substr($str, $startdd, $slen*2); } if($cfg_is_iconv) { return iconv_substr($str, $startdd, $slen*2); } if($cfg_soft_lang=='utf-8') { return cn_substr_utf8($str,$slen,$startdd); } $restr = ''; $c = ''; $str_len = strlen($str); if($str_len < $startdd+1) { return ''; } if($str_len < $startdd + $slen || $slen==0) { $slen = $str_len - $startdd; } $enddd = $startdd + $slen - 1; for($i=0;$i<$str_len;$i++) { if($startdd==0) { $restr .= $c; } else if($i > $startdd) { $restr .= $c; } if(ord($str[$i])>0x80) { if($str_len>$i+1) { $c = $str[$i].$str[$i+1]; } $i++; } else { $c = $str[$i]; } if($i >= $enddd) { if(strlen($restr)+strlen($c)>$slen) { break; } else { $restr .= $c; break; } } } return $restr; } 
替换为 

//中文截取2,单字节截取模式 function cn_substr($str,$slen,$startdd=0) { global $cfg_soft_lang; if($cfg_soft_lang=='utf-8') { return cn_substr_utf8($str,$slen,$startdd); } $restr = ''; $c = ''; $str_len = strlen($str); if($str_len < $startdd+1) { return ''; } if($str_len < $startdd + $slen || $slen==0) { $slen = $str_len - $startdd; } $enddd = $startdd + $slen - 1; for($i=0;$i<$str_len;$i++) { if($startdd==0) { $restr .= $c; } else if($i > $startdd) { $restr .= $c; } if(ord($str[$i])>0x80) { if($str_len>$i+1) { $c = $str[$i].$str[$i+1]; } $i++; } else { $c = $str[$i]; } if($i >= $enddd) { if(strlen($restr)+strlen($c)>$slen) { break; } else { $restr .= $c; break; } } } return $restr; }

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表