如何修复dedecms 5.7在发布文章时出现的标题不能为空错误提示?

avatar
作者
筋斗云
阅读量:0
请检查文章标题是否填写完整,确保没有遗漏或空白。如果问题依旧,尝试清除浏览器缓存或更换浏览器再试。

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

如何修复dedecms 5.7在发布文章时出现的标题不能为空错误提示?

在使用织梦dedecms5.7后台发布文章时,如果遇到系统提示“标题不能为空”的问题,通常是由于PHP版本升级至PHP5.4后,htmlspecialchars函数默认使用utf8编码,而gbk编码字符串经htmlspecialchars转义后中文字符串变为空,导致标题为空,以下是详细的解决方法:

问题症状

1、V5.7登录后台后:发布英文标题正常,但发布中文标题会提示“标题不能为空”。

2、问题根源:htmlspecialchars在php5.4中默认为utf8编码,gbk编码字符串经htmlspecialchars转义后的中文字符串为空,即标题为空。

解决办法

1、修改dede/article_add.php和dede/article_edit.php文件

将以下代码:

```php

$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));

```

修改为:

```php

$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen), ENT_COMPAT, 'GB2312');

```

2、修改include/ckeditor/ckeditor_php5.php文件

在第138行附近,将以下代码:

```php

htmlspecialchars($value)

```

修改为:

```php

htmlspecialchars($value, ENT_COMPAT, 'GB2312')

```

3、测试发布文章:经过上述修改后,重新尝试发布文章,应该能够成功发布中文标题。

注意事项

1、源码修改风险:直接修改程序源码可能会带来风险,建议在进行任何修改前备份原始文件。

2、PHP版本兼容性:如果不想修改源码,可以考虑暂时降级到PHP5.3版本,等待织梦官方更新支持PHP5.4后再进行升级。

相关问答FAQs

问题1:为什么在dedecms5.7中发布中文标题会提示“标题不能为空”?

答:这是因为在PHP5.4中,htmlspecialchars函数默认使用utf8编码,而gbk编码的中文字符串在经过htmlspecialchars转义后会变成空字符串,导致系统检测到标题为空,从而提示“标题不能为空”。

问题2:如果不想修改源码,有其他解决方案吗?

答:是的,如果不希望修改源码,可以选择暂时降级到PHP5.3版本,等织梦官方更新支持PHP5.4后,再进行服务器空间的更换和PHP版本的升级,这样可以在不影响现有功能的情况下解决问题。


### Dedecms 5.7 发布文章提示“标题不能为空”的解决方法

如何修复dedecms 5.7在发布文章时出现的标题不能为空错误提示?

#### 1. 问题

在使用 Dedecms 5.7 系统发布文章时,如果遇到提示“标题不能为空”,可能是由于以下几个原因导致的:

表单提交时标题字段未正确填写。

系统配置或模板代码错误。

数据库字段设置问题。

#### 2. 解决步骤

##### 步骤一:检查表单填写

确保在发布文章时,标题字段已经被正确填写。

如果是批量发布,请检查所有文章的标题是否已填写。

##### 步骤二:检查系统配置

登录 Dedecms 管理后台。

进入“系统设置”或“全局参数”等配置页面。

检查相关配置项,确保没有设置错误。

##### 步骤三:检查模板代码

打开 Dedecms 主题文件夹中的模板文件。

找到发布文章时涉及标题显示的模板代码。

确保代码中标题字段被正确引用。

##### 步骤四:检查数据库字段

登录数据库管理工具。

选择 Dedecms 对应的数据库名。

查看文章表(通常为 `dede_arctype` 或 `dede_archives`)中标题字段的设置。

确认标题字段(如 `title`)不为空,并且类型设置为文本。

##### 步骤五:修复代码

如果发现模板代码错误,进行相应的修正。

如果数据库字段设置问题,进行相应的调整。

#### 3. 代码示例(模板修复)

以下是一个简单的模板修复示例,假设标题字段在模板中引用错误:

```html

{$dede_field.title}

{$title}

```

#### 4. 归纳

通过以上步骤,通常可以解决 Dedecms 5.7 发布文章时提示“标题不能为空”的问题,如果问题依然存在,可能需要进一步检查系统日志或联系技术支持获取帮助。

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!