LENDIEN聯電 冷暖 清淨 除溼 移動式空調 9000BTU任天堂-Switch-NS-公司貨主機-豪華全配組LG樂金 WIFI遠控雙眼小精靈掃地清潔機器人變頻版

2009年6月26日 星期五

設定與mysql連線所使用的語系

其實是之前就有遇過的問題,但是因為以前有前人寫好語法就直接copy沒有記,直到昨天有需要又找不到哪裡有用過,才認真的找了一下資料。

簡單的說,會遇到這個問題是因為資料庫使用的語系與程式預設與mysql連線時要使用的語系不一樣,這會造成中文字在mysql裡是正常的,但透過php抓出來的卻是問號。解決這樣的問題依php版本不同有不同的方式。

php5:mysql_set_charset(charset,resource)
php4:mysql_query('SET NAMES charset', resource)

範例:假設連線時要設定語系為utf8


//建立與mysql db的連線
$dbConnection=mysql_connect("localhost","acc","password");
//選擇要操作哪一個資料庫
mysql_select_db("dbname",$dbConnection);

//如果是php5
mysql_set_charset('utf8',$dbConnection);
//如果是php4
mysql_query('SET NAMES utf8', $dbConnection);


這樣子把資料庫裡的中文字抓出來時,就會正常顯示了。


中文還真是麻煩的東西啊!

沒有留言:

張貼留言