織夢系統gbk版上傳到服務器發現系統基本設置下面不能保存中文,發現是網站編碼的問題,我utf8的織夢在php5.4下就沒問題,所以,要給表單中的字符轉碼。
后臺-系統基本參數無法保存中文 修改方法:
dede\templets\sys_info.htm里面搜索
htmlspecialchars($row['value'])
替換成
htmlspecialchars($row['value'],ENT_COMPAT ,'GB2312')
如果發現還有其他頁面,也沒辦法保存中文,最好在dreamweaver下整站搜索htmlspecialchars($row['value']),然后批量替換成htmlspecialchars($row['value'],ENT_COMPAT ,'GB2312'),這樣就能保證系統的表單沒問題。
但是這個修改的方法,對編輯器中的中文沒辦法,還要修改編輯器,方法為:
include/ckeditor/ckeditor_php5.php文件 找到代碼 $out = “<textarea name=\&;” . $name . “\&;” . $attr . “>” .htmlspecialchars($value). “</textarea>\n”; 改成: $out = “<textarea name=\&;” . $name . “\&;” . $attr . “>” .htmlspecialchars( $value, ENT_COMPAT, 'GB2312' ). “</textarea>\n”; |
還有標簽也不顯示,修改方法為:
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');
這些都沒問題后,發現 核心-批量維護-tag標簽管理里面的中文標簽全部都不顯示了,真是麻煩,修改方法:
打開/dede/templets/tags_main.htm
找到:
$fields['tag'] = htmlspecialchars($fields['tag']);
替換為
$fields['tag'] = htmlspecialchars($fields['tag'],ENT_COMPAT ,'GB2312');
這樣修改,tag標簽就顯示了。
這樣一修改,在php5.4下的gbk版織夢就不會出現編碼的問題了。