您的足迹:首页 > 我的代码 >DedeCMS发布文章时候提示“标题不能为空”怎么回事?看我的解决方法

DedeCMS发布文章时候提示“标题不能为空”怎么回事?看我的解决方法

本来自己用软件写的post文章的。。一直都正常工作。


改了另一种模式后,就莫名的一堆站出现,标题不能为空 的情况。


检测网站还一切正常,百度一下。得到的方案基本上都一样。。(下面方法是别人的,最下面才是我自己的)

问题症状: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')

测试,发布文章成功。


看了一下那个函数,无非就是替换双引号了,默认就是这个,我嘞个去,那我自己的软件来说,直接在发布前,替换掉双引号不就行了??

说干就干,在软件里,提交前,把title字段的值,替换所有双引号为空。。再提交,一切OK。




本博客所有文章如无特别注明均为原创。作者:恶猫复制或转载请以超链接形式注明转自 恶猫的博客
原文地址《DedeCMS发布文章时候提示“标题不能为空”怎么回事?看我的解决方法

相关推荐

分享本文至:

发表评论

路人甲 表情
看不清楚?点图切换 Ctrl+Enter快速提交

网友评论(0)

恶猫的博客 -记录自己日常,代码,美图,电影,音乐,新闻,只是个人博客而已

浙ICP备15011757号-4 网站地图 联系我