在寫數據庫插入的時候輸入中文,在數據庫中顯示爲亂碼或空?html
爲何呢? mysql
由於字符編碼的不統一。sql
解決方法:數據庫
首先肯定你各部分的編碼。服務器
mysql編碼查詢:ui
在你的mysql的安裝目錄下有個bin文件夾,點開裏面的mysql.exe 就進入了控制檯。編碼
輸入控制檯代碼 show variables like '%character_set_%'; 回車,spa
就會顯示如圖code
從上圖中能夠看到 MySQL 有六處使用了字符集,分別爲:client 、connection、database、results、server 、system。其中與服務器端相關:database、server、system(永遠沒法修改,就是utf-8);與客戶端相關:connection、client、results 。server
在 MySQL 的安裝目錄下有一個 my.ini 配置文件,經過修改這個配置文件能夠一勞永逸的解決亂碼問題。在這個配置文件中 [mysql] 與客戶端配置相關,[mysqld] 與服務器配置相關。默認配置以下:
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8
這時只須要將下的默認編碼 default-character-set=utf8 改成 default-character-set=gbk ,從新啓動 MySQL 服務便可。
而後還要肯定PHP的編碼是UTF8。
最後要肯定你輸入的數據的編碼,只須要在你的輸入頁面的頁頭加上
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
編碼就變UTF8了。
這個時候編碼就同一了,就不會出現亂碼,爲空的現象了~ OY!