最近在一个朋友的织梦登录后台后,发布英文标题没问题,但是发布中文会提示“标题不能为空”。查找一番,找出问题根源:htmlspecialchars在php5.4默认为utf8编码,gbk编码字符串经 htmlspecialchars 转义后的中文字符串为空,也就是标题为空。

解决办法:给htmlspecialchars添加ENT_COMPAT ,’GB2312’参数修改编码默认值。

具体修改页面:

1、打开文件dede/article_add.php dede/article_edit.php,将以下代码(大概在第101行和108行):

$title = dede_htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,
‘GB2312’);

 

替换为

dede_htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));

 

修改前

修改后

2、打开文件include/ckeditor/ckeditor_php5.php,将以下代码(大概在第138行):

dede_htmlspecialchars($value)

 

替换为

dede_htmlspecialchars($value ENT_COMPAT ,
‘GB2312’)

 

修改前

修改后

把修改后的文件上传至服务器,覆盖后再发布文章进行测试,可发布文章成功。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。