consulting

62-yn.jpg
解決中文寫入MySQL資料庫產生亂碼
會員評比: / 5
最差最好 
知識庫文章 - 網站程式資料庫設計知識文章
連接Mysql 4.1、Mysql 5.0等版本的資料庫系統,php程式必須在連接資料庫的寫法中,加上這三行

mysql_query("SET NAMES 'UTF8'");
mysql_query("SET CHARACTER SET UTF8");
mysql_query("SET CHARACTER_SET_RESULTS=UTF8'");


因此後來Collablog程式也做了修改,這樣才能確保中日韓等雙字元語系文字存進資料庫是utf-8編碼,網頁顯示也是utf-8編碼,達成前後端一致性。

但由於優格網之前就已經有很多文章了,並沒有在一開始使用utf-8指定的方式寫文章到資料庫裡面,不過網頁顯示都會是正常的utf-8字元,這是php程式轉換的功勞。


所以優格網資料庫裡面文章的存法會是這樣

工作之餘連續不斷地嘗試(正確的字元是「工作之餘連續不斷地嘗試」)


為了解決這個問題,我們研究了滿久的時間,我的想法是把資料庫的亂碼文字用程式轉換出來正確的utf-8中文編碼資料,再透過程式轉回去就好。後來還是由dong大人寫了導出和導入的程序來達成,就把文章的資料表透過程式導出來成靜態網頁,再將這些寶貴的文章導入到資料庫,資料庫裡的資料存法就變成正確的utf-8中文字了。

(此篇文章為網路轉載,如有冒犯,請來信告知,當即刻移除!)