gbk版織夢dedecms在php5.4下系統(tǒng)基本設置不能保存中文以及在編輯
時間: 2018-12-07 23:49
閱讀: 次
作者:素材無憂網(wǎng)
織夢系統(tǒng)我一直都是在用utf8版的,最近看重一個模板,就買了,可是上傳到服務器發(fā)現(xiàn)系統(tǒng)基本設置下面不能保存中文,網(wǎng)上沒找到很好的方法,自己看了一下,發(fā)現(xiàn)是網(wǎng)站編碼的問題,我utf8的織夢在php5.4下就沒問題,所以,要給表單中的字符轉(zhuǎn)碼。
后臺-系統(tǒng)基本參數(shù)無法保存中文 修改方法:
dede\templets\sys_info.htm里面搜索
htmlspecialchars($row[‘value’])
替換成
htmlspecialchars($row[‘value’],ENT_COMPAT ,’GB2312′)
如果發(fā)現(xiàn)還有其他頁面,也沒辦法保存中文,最好在dreamweaver下整站搜索htmlspecialchars($row[‘value’]),然后批量替換成htmlspecialchars($row[‘value’],ENT_COMPAT ,’GB2312′),這樣就能保證系統(tǒng)的表單沒問題。
但是這個修改的方法,對編輯器中的中文沒辦法,還要修改編輯器,方法為:
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’);
這些都沒問題后,發(fā)現(xiàn) 核心-批量維護-tag標簽管理里面的中文標簽全部都不顯示了,真是麻煩,修改方法:
打開/dede/templets/tags_main.htm
找到:
$fields[‘tag’] = htmlspecialchars($fields[‘tag’]);
替換為
$fields[‘tag’] = htmlspecialchars($fields[‘tag’],ENT_COMPAT ,’GB2312′);
這樣修改,tag標簽就顯示了。
這樣一修改,在php5.4下的gbk版織夢就不會出現(xiàn)編碼的問題了。
標簽: