1 頁 (共 1 頁)

[問題] MySQL 4.1.x 連線校對設定的問題

發表於 : 2008-01-15 15:28
阿維
●架設主機作業系統:RedHat Enterprise 3
●您安裝的程式:Apache/1.3.37 (Unix)、PHP 4.4.3、MySQL 4.1.22-standard、phpMyAdmin - 2.11.0 MySQL 文字編碼: cp1252 West European (latin1)
●您的 phpBB3 版本:3.0.0
●您的 phpBB3 使用風格:prosilver
●您的 domain(網域名稱) :www.razerclub.com.tw
●您的 phpBB3 連結網址: http://www.razerclub.com.tw
●錯誤狀態:
我在安裝的時候,有將 MySQL 連線校對 設定成 utf8_bin 可是安裝完之後,從 phpMyAdmin 檢查的時候,發現中文字全都變成 ??????? 的亂碼,可是在 phppBB 前台沒有任何問題
請問要怎麼才能夠正確設定 MySQL 連線校對呢?

Re: [問題] MySQL 4.1.x 連線校對設定的問題

發表於 : 2008-01-15 22:37
心靈捕手
JORDAN 寫:●架設主機作業系統:RedHat Enterprise 3
●您安裝的程式:Apache/1.3.37 (Unix)、PHP 4.4.3、MySQL 4.1.22-standard、phpMyAdmin - 2.11.0 MySQL 文字編碼: cp1252 West European (latin1)
●您的 phpBB3 版本:3.0.0
●您的 phpBB3 使用風格:prosilver
●您的 domain(網域名稱) :www.razerclub.com.tw
●您的 phpBB3 連結網址: http://www.razerclub.com.tw
●錯誤狀態:
我在安裝的時候,有將 MySQL 連線校對 設定成 utf8_bin 可是安裝完之後,從 phpMyAdmin 檢查的時候,發現中文字全都變成 ??????? 的亂碼,可是在 phppBB 前台沒有任何問題
請問要怎麼才能夠正確設定 MySQL 連線校對呢?
建議您:
1. 更改 MySQL 文字編碼: cp1252 West European (latin1) 為 UTF-8 Unicode (utf8)
2. 或者, 移除 MySQL 4.1.22 改裝 MySQL 5.0.45

Re: [問題] MySQL 4.1.x 連線校對設定的問題

發表於 : 2008-01-16 02:13
阿維
我知道是什麼原因了,原因出在虛擬主機商的 phpMyAdmin 設定不同,才會看到亂碼
另一方面 phpBB3 似乎沒有像 phpBB2 透過修改 db.php 指定讀取 UTF-8 編碼的連線校對方式,這或許跟這個也有關係

我另外安裝一套 phpMyAdmin 來用就看不到亂碼,只是用自己架設的 phpMyAdmin 也不太適合備份資料庫,因為可能會遇到 2M 檔案輸出容量限制的問題
請問像 phpBB2 那樣在 db.php 加入指定讀取 UTF-8 編碼的連線校對方式,也有沒有可能同樣應用在 phpBB3 的上面? (因為我也有在這個主機商安裝過 phpBB2 也是這樣解決的)

修改includes/db.php, 在 ?>之前加上

代碼: 選擇全部

$db->sql_query("SET NAMES utf8;");
$db->sql_query("SET CHARACTER_SET_CLIENT=utf8;");
$db->sql_query("SET CHARACTER_SET_RESULTS=utf8;");
像這樣修改

Re: [問題] MySQL 4.1.x 連線校對設定的問題

發表於 : 2008-01-16 13:29
心靈捕手
JORDAN 寫:我知道是什麼原因了,原因出在虛擬主機商的 phpMyAdmin 設定不同,才會看到亂碼
另一方面 phpBB3 似乎沒有像 phpBB2 透過修改 db.php 指定讀取 UTF-8 編碼的連線校對方式,這或許跟這個也有關係

我另外安裝一套 phpMyAdmin 來用就看不到亂碼,只是用自己架設的 phpMyAdmin 也不太適合備份資料庫,因為可能會遇到 2M 檔案輸出容量限制的問題
請問像 phpBB2 那樣在 db.php 加入指定讀取 UTF-8 編碼的連線校對方式,也有沒有可能同樣應用在 phpBB3 的上面? (因為我也有在這個主機商安裝過 phpBB2 也是這樣解決的)

修改includes/db.php, 在 ?>之前加上

代碼: 選擇全部

$db->sql_query("SET NAMES utf8;");
$db->sql_query("SET CHARACTER_SET_CLIENT=utf8;");
$db->sql_query("SET CHARACTER_SET_RESULTS=utf8;");
像這樣修改
1. 資料庫備份可以請主機商協助
2. phpBB 3 不需要做類似的修改

Re: [問題] MySQL 4.1.x 連線校對設定的問題

發表於 : 2008-02-05 06:19
mmk7821
推文!


我也在這邊卡住了


兩個主機商的MySQL編碼不同

造成另一邊測試成功,準備要正式套用的時候失效


目前只好在正式主機直接轉換了。


只是未來搬家時又會出現這個問題。