阅读348 返回首页    go 织梦DedeCMS


织梦dedecms5.7后台发布文章提示“标题不能为空”的解决方法

问题症状:V5.7登录后台后,发布英文标题没问题,发布中文会提示“标题不能为空”。

问题根源:PHP版本升级为PHP5.4之后,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')

测试,发布文章成功。

还有后台系统参数不参保存中文的解决方法,是打开dede/templets/sys_info.htm这个文件,里边找htmlspecialchars($row['value'])这段代码,其中可能是htmlspecialchars这个函数的问题,可以直接改成$row['value']


最后更新:2017-06-18 17:18:42

  下一篇:go DedeCMS中MySQL修复表的两个小技巧_织梦CMS帮助中心