织梦CMS文章发布标题不能为空的解

2021年1月3日12:59:17 评论 1009字阅读3分21秒

织梦CMS文章发布标题不能为空的解

第一次使用织梦的时候就发现织梦后台发布文章提示“标题不能为空”问题解析,产生这个问题的根本原因是php升级到5.4版本之后跟织梦的默认设置有冲突导致。

如果你安装的是织梦5.3或者5.6可能没事,因为dede5.6之前的版本其中php的版本默认配置的是5.3版本的php,但是织梦5.7开始集成其中的php是5.4版本的,而这时的php5.4默认编码格式跟环境的编码格式冲突(格式不一致),格式不一致的时候如果你输入的标题是纯英文+数字,这没问题,能正常使用,因为编码格式utf-8跟gbk的区别在于中文字符。

如果你输入的是中文字符,那么htmlspecialchars()函数在转换的时候因为编码格式不同导致的乱码是他不识别,所以就直接输出空,因为他什么也没有转过来,这也就是为什么你输入汉语标题提交,却提示“标题不能为空”的原因!

问题分析清楚了,解决方法也很明显了,下面提供两种解决方法:

第一种:将php的版本切换回5.3版本或者比5.3更早的版本的,这个问题自然就解决了

第二种:给htmlspecialchars(函数)添加ENT_COMPAT ,'GB2312'

就是给php的这个函数强制设定编码格式,这样也能解决这个问题,具体对应的位置是

①:dede/article_add.php 这个php文件中查找

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

改成

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

②:然后再找到dede/article_edit.php这个php文件中查找

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

改成

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

③:include/ckeditor/ckeditor_php5.php 查找

htmlspecialchars($value)

改为htmlspecialchars($value, ENT_COMPAT ,'GB2312')

继续阅读
  • 文本由 发表于 2021年1月3日12:59:17
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
织梦创建栏目显示模版不存在 网站建设

织梦创建栏目显示模版不存在

织梦创建栏目显示模版不存在 现在个人创建网站的人越来越多,相信大家大多数都会使用织梦系统来创建网站。我也是使用织梦来创建网站的,现在把我在使用过程中遇到问题的解决办法和大家共享,希望能帮助大家。 有时...
织梦Dedecms转wordpress搬家方法 网站建设

织梦Dedecms转wordpress搬家方法

织梦Dedecms转wordpress搬家方法 使用织梦CMS每个月都被黑,打完官方最新补丁不久又有漏洞继续被黑,算是受够了,果断把网站从天杀的dedecms中搬家到wordpress程序,网上搜索转...
生成输出织梦Dedecms全站RSS文件 网站建设

生成输出织梦Dedecms全站RSS文件

生成输出织梦Dedecms全站RSS文件 织梦后台生成更新RSS文件是按照网站栏目生成告诉用户每个栏目的RSS订阅地址,保存在data目录下,按分类生成很适合栏目或栏目文章较多的dedecms站点,小...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: