PHP MySQL中文亂碼

2021-08-04 03:32:10 字數 801 閱讀 3205

php+mysql出現中文亂碼的原因。

1. mysql資料庫的編碼是utf8,與php網頁的編碼格式不一致,就會造成mysql中的中文亂碼。

2. 使用mysql中建立表、或者選擇欄位時設定的型別不是utf8,而網頁編碼不是utf8,也可能造成mysql中文亂碼.

3. php頁面的字符集與資料庫的編碼不一致。

4. php連線mysql資料庫,操作是設定的語句指定的編碼和頁面編碼,php頁面編碼不一致。

5. 使用者提交的html頁面編碼,和顯示資料的頁面編碼不一致 ,就肯定會造成php頁面亂碼

怎麼解決中文亂碼的問題。

1. 網頁編碼設定。一般在html**中的檔案頭中加入屬性:

保證,網頁是"utf-8"編碼。

2. php**設定。在php**的開始部分加入以下**:

header(」content-type: text/html;charset=utf-8″);

且要求儲存的檔案編碼方式是utf-8(可以用editplus開啟設定,如下圖),這樣就保證了該檔案也是utf-8編碼。

3. 資料庫中表的字段中儲存中文的部分,要設定為utf8_general_ci型別。

4.php在連線資料庫操作時,要設定操作的字段型別為utf8,設定方法如下:

mysql_connect(』localhost』,'user』,'password』);mysql_select_db(』db』);mysql_query(」set names utf8;」); //**設定字符集***

PHP MYSQL中文亂碼問題

從mysql 4.1開始引入多語言的支援,但是用php插入的中文會出現亂碼.無論用什麼編碼也不行.解決這個問題其實很簡單.1.在建表的時候設定編碼型別為gb2312 chinese ci.2.在php頁面的資料庫連線語句加一行mysql query set names gb2312 link 例如 ...

PHP MYSQL中文亂碼問題

從mysql 4.1開始引入多語言的支援,但是用php插入的中文會出現亂碼.無論用什麼編碼也不行.解決這個問題其實很簡單.1.在建表的時候設定編碼型別為gb2312 chinese ci.2.在php頁面的資料庫連線語句加一行mysql query set names gb2312 link 例如 ...

PHP MYSQL中文亂碼解決方案

在mysql console中輸入show variables like character 執行結果如下圖所示 把上圖value的12356行統一設定成gbk或utf 8就可以解決這個問題。一 首先看1 2 5行。在php所有用到mysql的地方,先執行 set names gbk 或者 set ...