当前位置 : 主页 > 建站教程 > dedecms >

织梦dedecms5.7提示标题不能为空的原因及解决方案

来源:互联网 收集:自由互联 发布时间:2022-05-03
问题症状:V5.7登录后台后,发布英文标题没问题,发布中文会提示标题不能为空。 问题根源:htmlspecialchars在php5.4默认为utf8编码,gbk编码字符串经 htmlspecialchars 转义后的中文字符串为空
问题症状: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以后再更换空间服务器。
网友评论
相关栏目