模板X

位置: 破奇网  织梦cms  dedecms教程

dede织梦后台中文保存不了,dede gbk中文问题

栏目: dedecms教程    更新: 2019-05-29    浏览:

最近使用最新的织梦gbk 5.7发现后台竟然保存不了中文,一开始以为是数据库问题,但发现英文能保存只是中文不行,所以考虑到是否编码问题导致的。

gbk的织梦确实没有utf-8对中文支持好,我们这里遇到的问题就是PHP版本太高,导致织梦程序的有些函数支持不好,具体的函数就是htmlspecialchars() ,织梦也曾解决过PHP版本引起的函数问题,但有个文件却没有修复好,文件是/dede/templets/sys_info.htm,破奇网下面给出解决方法:

先再找到第192行:
 
echo "<input type='text' name='edit___{$row['varname']}' id='edit___{$row['varname']}' value=\"".htmlspecialchars($row['value'])."\" style='width:80%'>{$addstr}";

替换成下面的:
echo "<input type='text' name='edit___{$row['varname']}' id='edit___{$row['varname']}' value=\"".htmlspecialchars($row['value'],ENT_COMPAT,'ISO-8859-1')."\" style='width:80%'>{$addstr}";

再找到这个文件的第182行:
echo "<textarea name='edit___{$row['varname']}' row='4' id='edit___{$row['varname']}' class='textarea_info' style='width:98%;height:50px'>".htmlspecialchars($row['value'])."</textarea>";

替换成下面的:
echo "<textarea name='edit___{$row['varname']}' row='4' id='edit___{$row['varname']}' class='textarea_info' style='width:98%;height:50px'>".htmlspecialchars($row['value'],ENT_COMPAT,'ISO-8859-1')."</textarea>";

 

附件下载 [ 下载次数:999 ]

    收藏、推荐