本文实例讲述了dedecms5.7后台发布文章提示“不能为空”的解决方法。分享给大家供大家参考。具体分析如下:
有人发现在使用织梦dedecms5.7后台发布文章提示“不能为空”了,这个问题很怪我们都是从直接从官网下载的也有问题了,那么要如何解决呢.
问题症状:V5.7登录后台后,发布英文没问题,发布中文会提示“不能为空”.
问题根源:htmlspecialchars在php5.4默认为utf8编码,gbk编码字符串经 htmlspecialchars 转义后的中文字符串为空,也就是为空.
解决办法:给htmlspecialchars添加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′);
2、include/ckeditor/ckeditor_php5.php 138行:将
复制代码代码如下:htmlspecialchars($value)替换为
复制代码代码如下:htmlspecialchars($value, ENT_COMPAT ,'GB2312′)
测试,发布文章成功.
提示:若不想修改程序源码的话,建议更换到PHP5.3版本,等织梦升级支持PHP5.4以后再更换空间服务器.
希望本文所述对大家的dedecms建站有所帮助。