
dedecms发布文章提示”标题不能为空”
现象是发布英文标题没问题,发布中文会提示“标题不能为空”
因为htmlspecialchars在php5.4默认为utf8编码,
gbk编码字符串经 htmlspecialchars 转义后的中文字符串为空,也就是标题为空。
所以给htmlspecialchars添加ENT_COMPAT ,’GB2312′参数修改编码默认值。
具体方法有两种:
1.在/include/common.func.php中任意位置添加函数
function gbkhtmlspecialchars($str)
{
return htmlspecialchars($str, ENT_COMPAT ,’ISO-8859-1′)
}
2.如果空间商可以切换php版本,请将php版本切换为php5.2就不会有此问题了。
希望我的回答能够帮到你!
方法一:这个是php版本的问题,你一定用的是php5.4,织梦与php 5.4不兼容,换成5.3就好了,,方法二:
问题症状: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')
测试,发布文章成功。
打字不易,如满意,望采纳。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)