• 河南网站建设-郑州网站设计-郑州网站建设-手机建站-郑州建站-上海建站

  • 专注网站建设 服务热线: 13061801310

当前位置:好东东网 > 近期动态 > 网站建设观点 > 正文

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

发布时间:2021-04-30 | 发布者: 东东工作室 | 浏览次数:
织梦系统我一直都是在用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";
还有文章页标签也不显示,修改方法为:
 
打开include/taglib/tag.lig.php
 
找到
 
$row['tag'] = htmlspecialchars($row['tag']);
改为:
 
$row['tag'] = htmlspecialchars($row['tag'],ENT_COMPAT ,'GB2312');
发布文章的标题不显示修改方法如下:
 
1、dede/article_add.php 和 dede/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版织梦就不会出现编码的问题了。
 

转载请标注:东东工作室——织梦gbk版在php5.4下系统基本设置不能保存中文以及在编辑器下中文不显示的问题