[問題]如何正確轉換 已經存在的 database 之編碼?

phpBB Installation & Usage Support
phpBB 2 安裝於各類型作業平台之問題討論;外掛問題,請到相關版面依發問格式發表!
(發表文章請按照公告格式發表,違者砍文)

版主: 版主管理群

版面規則
本區是討論關於 phpBB 2.0.X 架設安裝上的問題,只要有安裝任何外掛,請到外掛討論相關版面按照公告格式發表。
(發表文章請按照公告格式發表,違者砍文)
主題已鎖定
頭像
b90220208
星球普通子民
星球普通子民
文章: 13
註冊時間: 2005-12-02 15:00
來自: TAIEAN
聯繫:

[問題]如何正確轉換 已經存在的 database 之編碼?

文章 b90220208 »

:) 如下 6 點是我的設定與測試結果:

1. 所有 *.php 以 utf8 存檔

2. html code 也指定了:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" Content="UTF-8" />

3. mysql> ALTER DATABASE forum DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

4. mysql> ALTER TABLE forum_table DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;


5. my.ini 相關設定如下:
[mysqld]
init_connect='SET NAMES utf8'
default-character-set=utf8
default-collation=utf8_general_ci

6. 執行查詢 mysql> show variables; 相關結果如下:
character_set_client | utf8
character_set_connection | utf8
character_set_database | utf8
character_set_results | utf8
character_set_server | utf8
character_set_system | utf8

collation_connection | utf8_general_ci
collation_database | utf8_general_ci
collation_server | utf8_general_ci

:eek: [Question]:
為何在 "命令提示字元" 執行查詢
mysql> SET NAMES 'utf8';
mysql> select * from forum_table;
竟出現亂碼 (但在 browser 瀏覽是正確無誤的)
.....請問是我資料庫的編碼轉換沒成功嗎(上述之第3,4點的語法為何會無效呢?)? :shock:
ps. 我重新以 browser 瀏覽網站並指定 browser 以 utf8 編碼檢視下再 post 新文章結果也一樣, browser 瀏覽沒問題,但換在 "命令提示字元" 查詢就又變成了亂碼!.....Why?? :shock:
安裝環境 :
Windows server 2003
Apache - 2.0.55
Php - 5.1.1
Mysql - 5.0.16
PhpBB - 2.0.20
k.h.chen
星球普通子民
星球普通子民
文章: 16
註冊時間: 2005-12-13 15:02

文章 k.h.chen »

雖然你在mysql 中存的資料格式是utf8,但是它的命令輸入模式輸出顯示是不支援utf8的格式,就像你要用記事本(notepad)要看utf8格式的文字一樣.明知它是utf8的資料,但因輸出的程式不支援,所以就會以亂碼出現.
主題已鎖定

回到「phpBB 2 安裝與使用」