gbk版织梦dedecms在php5.4下系统基本设置不能保存中文以及在编辑器下中不显示

织梦系统我一直都是在用utf8版的,最近看重一个模板,就买了,可是上传到服务器发现系统基本设置下面不能保存中文,网上没找到很好的方法,自己看了一下,发现是网站编码的问题,我utf8的织梦在php5.4下就没问题,所以,要给表单中的字符转码。 

后台-系统基本参数无法保存中文

修改方法

dede/templets/sys_info.htm里面搜索 

htmlspecialchars($row[‘value’]) 

替换成 

htmlspecialchars($row[‘value’],ENT_COMPAT ,’GB2312′) 

如果发现还有其他页面,也没办法保存中文,最好在dreamweaver下整站搜索

htmlspecialchars($row[‘value’])

然后批量替换成

htmlspecialchars($row[‘value’],ENT_COMPAT ,’GB2312′)

这样就能保证系统的表单没问题。 
但是这个修改的方法,对编辑器中的中文没办法,还要修改编辑器,方法为: 
include/ckeditor/ckeditor_php5.php文件 
找到代码 

$out = “<textarea name=”” . $name . “”” . $attr . “>” .htmlspecialchars($value). “</textarea>n”; 

改成: 

$out = “<textarea name=”” . $name . “”” . $attr . “>” .htmlspecialchars( $value, ENT_COMPAT, ‘GB2312′ ). “</textarea>n”; 

还有标签也不显示,修改方法为: 

dede/article_add.phpdede/article_edit.php将 

$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen)); 

改成 

$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,’GB2312’); 

这些都没问题后,发现 核心-批量维护-tag标签管理里面的中文标签全部都不显示了,真是麻烦,修改方法: 
打开/dede/templets/tags_main.htm 
找到: 

$fields[‘tag’] = htmlspecialchars($fields[‘tag’]); 

替换为 

$fields[‘tag’] = htmlspecialchars($fields[‘tag’],ENT_COMPAT ,’GB2312′); 

这样修改,tag标签就显示了。 
这样一修改,在php5.4下的gbk版织梦就不会出现编码的问题了。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索