织梦后台编辑文章时内容为空,可数据库里有内容,读取正常的问题解决办法
2016-10-09 09:10
323 查看
昨天在做四海电子这个项目时,遇到了一个问题:织梦后台编辑文章时内容为空,可数据库里有内容,前台读取正常。在另一台服务器上是正常的,后台编辑里内容可以正常显示。
这是为什么呢?我解决这个问题花了一天。网上找了一些处理办法,都没有找到正解。
直到看到这篇解决办法:
dedecms出现这个问题与代码无关,主要是和PHP的版本有关,用的PHP5.4,更换成PHP5.2之后就不会有这个问题了。
问题原因是:php5.4版本中htmlspecialchars在php5.4默认为utf8编码,gbk编码的字符串经过htmlspecialchars 转义后的中文字符串为空了,所以造成添加文章时提示“标题不能为空”,编辑文章时编辑器内容空白。
解决的办法:
标题不能为空
修改dede/article_add.php 和 dede/article_edit.php 这2个文件。把$title =htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));
改成$title =htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT, GB2312 );
编辑器内容空白
打开include/ckeditor/ckeditor_php5.php找到大约 138行
将htmlspecialchars($value)替换为htmlspecialchars($value, ENT_COMPAT, GB2312 )
如果是其它v5.6用fck编辑器的,就打开include/FCKeditor/fckeditor.php找到大约76行
将$HtmlValue = htmlspecialchars( $this->Value ) ;替换为$HtmlValue = htmlspecialchars($this->Value,ENT_COMPAT , GB2312 );
系统站点设置网站名称、站点默认关键字、站点描述也是保存后显示为空,打开./dede/file_manage_view.php,搜索$content= htmlspecialchars($content); 替换成$content =htmlspecialchars($content,ENT_COMPAT , GB2312 );
这是为什么呢?我解决这个问题花了一天。网上找了一些处理办法,都没有找到正解。
直到看到这篇解决办法:
dedecms出现这个问题与代码无关,主要是和PHP的版本有关,用的PHP5.4,更换成PHP5.2之后就不会有这个问题了。
问题原因是:php5.4版本中htmlspecialchars在php5.4默认为utf8编码,gbk编码的字符串经过htmlspecialchars 转义后的中文字符串为空了,所以造成添加文章时提示“标题不能为空”,编辑文章时编辑器内容空白。
解决的办法:
标题不能为空
修改dede/article_add.php 和 dede/article_edit.php 这2个文件。把$title =htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));
改成$title =htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT, GB2312 );
编辑器内容空白
打开include/ckeditor/ckeditor_php5.php找到大约 138行
将htmlspecialchars($value)替换为htmlspecialchars($value, ENT_COMPAT, GB2312 )
如果是其它v5.6用fck编辑器的,就打开include/FCKeditor/fckeditor.php找到大约76行
将$HtmlValue = htmlspecialchars( $this->Value ) ;替换为$HtmlValue = htmlspecialchars($this->Value,ENT_COMPAT , GB2312 );
系统站点设置网站名称、站点默认关键字、站点描述也是保存后显示为空,打开./dede/file_manage_view.php,搜索$content= htmlspecialchars($content); 替换成$content =htmlspecialchars($content,ENT_COMPAT , GB2312 );
相关文章推荐
- 怎么解决织梦cms后台编辑内容等出现空白的问题?
- 解决织梦后台文章编辑内容为空
- dede后台文章无法编辑(出现空白)的解决办法
- dede后台发表文章无法编辑(出现空白)的解决办法
- 火车头采集器对织梦后台管理员永久登录的问题解决办法
- UEditor编辑文章出现多余空行问题的解决办法
- 压测xx业务数据库资源大量等待,存在表锁问题,导致数据库无法正常执行解决办法
- 5.1sp1生级5.3 有部分文章出现读取附加信息出错的解决办法-DEDECMS(织梦)教程
- DEDECMS后台文章编辑内容框消失解决方法
- PHPexcel读取excel内容返回对象问题的解决办法
- ASP .NET readonly texbox 后台不能读取问题的解决办法
- dedecms织梦后台发布文章提示“标题不能为空”的解决办法
- 数据库分页问题,跳页不正常问题解决办法
- Python读取windows下记事本保存的UTF-8格式的内容,首行数据显示不正常的解决办法
- 彻底解决DropDownList验证问题,支持后台读取数据库!
- WordPress中修改固定链接导致无法显示文章内容的问题的解决办法
- Linux下BMP文件不能正常读取问题的解决办法
- DEDE后台编辑文章变空白的一个解决办法
- UEditor编辑文章出现多余空行问题的解决办法
- 数据库连接出错,请检查连接字串"的多种问题解决办法