ezDIY.org

PunBB / FluxBB Discussion Forum

您尚未登入。

公告

1.PunBB官方於2010-08-11 釋出 PunBB v1.2.23 ,請有使用的朋友記得要抽空升級版本喔!!
2.PunBB官方於2009-05-20 釋出 PunBB v1.3.4 ,請有使用的朋友記得要抽空升級版本喔!!
3.FluxBB官方於2009-08-31 釋出 FluxBB v1.2.22 ,請有使用的朋友記得要抽空升級版本喔!!

#1 2005-10-11 02:59:49

coolhd
論壇管理員
來自: 台灣台中
註冊日期: 2005-06-19
文章數: 584
網站

處理PunBB使用MySQL 4.1的中文問題

由於網站轉換虛擬主機的關係,新的主機商使用MySQL 4.1,使得原先使用MySQL 4.0來安裝的PunBB,現在必須轉換到MySQL 4.1才行.而這裡要做的是處理中文編碼設定的問題,不然轉換過去的PunBB從資料庫取出的中文字將會變成類似問號的亂碼.

1.原先在裝PunBB中文版時已經使用UTF-8編碼,所以整個資料庫檔(SQL)匯出成UTF-8文字檔的格式這部分沒問題.

2.在MySQL 4.1的部分,在匯入資料庫檔前必須先將新的資料庫整個"校對"為UTF-8格式才行,這部分我透過phpMyAdmin來做,並將新的資料庫設定為 utf8_general_ci ,MySQL 連線校對也是採用一樣的設定值.(網路上也有人建議採用utf8_bin這個設定值)

http://img.photobucket.com/albums/v197/coolhd/teach/mysql41.jpg

然後把資料庫檔做匯入.

3.修改資料表search_words,將裡頭的word欄位型態,由varchar改成varbinary.

http://img.photobucket.com/albums/v197/coolhd/teach/mysql41_punbb.jpg

4.修改PunBB關於資料庫查詢的語句,在程式與資料庫連線後,送出"文字編碼採用UTF-8的格式"來查詢資料庫裡的資料.

修改 punbb/include/dblayer/common_db.php,在最後一行加入:

$db->query("SET NAMES 'UTF8'");

然後存檔.

5.由於PHP的部分主機商採用PHP5,所以順勢將config.php設定檔改一下,將原先的:

$db_type = 'mysql';

改成:

$db_type = 'mysqli';

存檔. (PHP5支援MySQL的方式變成mysqli,沒使用PHP5的話這部分就不用改了)

這樣就轉換完成了.
ps. 步驟3如果沒做的話,將可能引發張貼文章或編輯文章時出現錯誤訊息.

離線

 
Adsense


論壇頁尾

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson

ezDIY.org TOP Topics