新聞中心
織夢dedecmsV5.7后臺編輯文章中文標題發(fā)布失敗的解決方法
作者 / 無憂主機 時間 2015-01-24 23:40:16
織夢是一款比較有名的CMS網站管理系統(tǒng)了,由于它用起來簡單和開源受到了很多站長朋友的青睞,目前國內很多的企業(yè)站,展示站等大多數都是用這款程序二次修改搭建的了,但是這款程序因為是開源的,可能沒有專門的人員對此進行升級維護,所以也會有一些漏洞,昨天小編幫一位站長朋友用PHP空間安裝了這款DEDECMS程序,安裝的比較順利,可是今天這位站長朋友登陸后臺發(fā)布文章的時候確出現(xiàn)了一個奇怪的問題,那就是當輸入中文標題發(fā)布文章的時候總是發(fā)布不成功,還提示標題不可以為空。當時小編又測試了用英文來測試卻可以。小編開始認為可能是程序沒有上傳完畢就安裝了,于是就又再次的上傳安裝了一遍還是這樣提示。小編經過查詢了一些資料找到了問題的原因?,F(xiàn)在PHP版本如果高點可能沒有就不會提示這個報錯了。如果低于PHP5.3的就可能會出現(xiàn)這個報錯了,那么究竟該如何去解決呢? 第一步:連接FTP軟件,按照目錄路徑找到include/ckeditor/ckeditor_php5.php使用高級編輯器打開在137行代碼:
$out = "<textarea name=\"" . $name . "\"" . $attr . ">" . htmlspecialchars($value) . "</textarea>\n";改為:
$out = "<textarea name=\"" . $name . "\"" . $attr . ">" . htmlspecialchars($value, ENT_COMPAT ,'GB2312′) . "</textarea>\n";第二步:按照目錄路徑找到dede/article_add.php文件,使用高級編輯器打開在101行如下代碼:
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));修改為:
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,'GB2312′);第三步:按照目錄路徑找到dede/article_edit.php文件使用高級編輯器打開找到108行代碼如下:
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));修改為:
$title = htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,'GB2312′);把以上三個文件中的這些代碼都修改后,保存上傳到FTP中覆蓋之前的文件。然后再登陸網站的后臺一鍵更新下緩存,再去發(fā)布文章的時候就可以了。其實問題的主要原因就是函數:htmlspecialchars()經過轉義后把標題的中文字符串轉義為空了。以上三個步驟其實就是再把參數修改默認為GB2312的編碼格式就解決了。 無憂主機相關文章推薦閱讀: DEDECMS教程:修改數據庫端口號 DEDECMS經驗:網站模板亂碼解決方法小結 針對織夢程序列表字段內可有可無的顯示方法 DEDECMS經驗:教你如何根據不同區(qū)域IP跳轉到相對應頁面
本文地址:http://www.love62.cn/dedecms/18457.html