织梦后台dedecms添加文章时提示标题为空,编辑文章时编辑器空白的解决办法

 dedecms出现这个问题与代码无关,主要是和PHP的版本有关,用的PHP5.4,更换成PHP5.2之后就不会有这个问题了。

问题原因是:php5.4版本中htmlspecialchars在php5.4默认为utf8编码,gbk编码的字符串经过 htmlspecialchars 转义后的中文字符串为空了,所以造成添加文章时提示“标题不能为空”,编辑文章时编辑器内容空白。iIr迪尔课堂(迪尔掌上课堂)--官网 免费自学网站

解决的办法:iIr迪尔课堂(迪尔掌上课堂)--官网 免费自学网站

标题不能为空

修改dede/article_add.php 和 dede/article_edit.php 这2个文件。把$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));iIr迪尔课堂(迪尔掌上课堂)--官网 免费自学网站
改成$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,'GB2312');//xiariboke.comiIr迪尔课堂(迪尔掌上课堂)--官网 免费自学网站

编辑器内容空白

打开include/ckeditor/ckeditor_php5.php找到大约 138行iIr迪尔课堂(迪尔掌上课堂)--官网 免费自学网站

将htmlspecialchars($value)替换为htmlspecialchars($value, ENT_COMPAT ,'GB2312')iIr迪尔课堂(迪尔掌上课堂)--官网 免费自学网站

如果是其它v5.6用fck编辑器的,就打开include/FCKeditor/fckeditor.php找到大约76行iIr迪尔课堂(迪尔掌上课堂)--官网 免费自学网站

将$HtmlValue = htmlspecialchars( $this->Value ) ;替换为 $HtmlValue = htmlspecialchars($this->Value, ENT_COMPAT ,'GB2312');iIr迪尔课堂(迪尔掌上课堂)--官网 免费自学网站

系统基本参数输入中文后显示空白

dede\templets\sys_info.htm里面搜索htmlspecialchars($row['value']) 改成htmlspecialchars(($row['value']), ENT_COMPAT ,'GB2312') 即可iIr迪尔课堂(迪尔掌上课堂)--官网 免费自学网站

 
 
iIr迪尔课堂(迪尔掌上课堂)--官网 免费自学网站

扫一扫手机访问