萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> PHP讀取MYSQL數據庫中文亂碼的解決方法

PHP讀取MYSQL數據庫中文亂碼的解決方法

PHP讀MYSQL中文亂碼原因最常見的就是頁面編碼與程序編碼不一致造成了,例如:你數據庫是utf8然後頁面是gbk這樣要數據庫查詢時不作處理就會出現中文亂碼了,要解決也很簡單我們只要使用mysql(set names charset)就可以解決了。

最後還是用常見的方法:mysql_query中的”set names charset”, 解決了。其中有一點要特別注意:PHP中設置使用“utf8”,而不是“utf-8”。就這樣問題解決了


後來查資料發現了一個解決方法,就是在mysql_connect後面加一句SET NAMES UTF8,即可使得UTF8的數據庫消除亂碼,對於GBK的數據庫則使用SET NAMES GBK,強制設置一下數據庫編碼即可解決MYSQL中文亂碼的問題,代碼如下:


解決方法是在成功連接數據庫之後,發送一句查詢語句:

 代碼如下 復制代碼


1: $this->LinkID = mysql_connect($this->Host, $this->User, $this->Password);
2: mysql_query('SET NAMES 'utf8'', $this->LinkID);

或:

DEFINE ('LINK', mysql_connect (DB_HOST, DB_USER, DB_PASSWORD));
mysql_query("SET NAMES 'utf8'", LINK);

gbk編碼的

$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_query("SET NAMES 'GBK'");

copyright © 萬盛學電腦網 all rights reserved