1. 程式人生 > >dede提示文章標題不能為空

dede提示文章標題不能為空

問題症狀: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')
測試,釋出文章成功。

另外一種原因 就是部分網站搬家後出現的,網站資料庫編碼錯誤,到時候只能輸入英文和數字, 如果是漢字的話雖然能提交但是點選檢視的時候還是空白。