mysql设置utf8_unicode_ci字符集php页面输出??乱码的解决方法
?MySQL對中文的支持程度還是很有限的,尤其是新手,但凡出現亂碼問題,就會頭大。?
亂碼問題1:用PHPmyAdmin操作MySQL數據庫漢字顯示正常,但用PHP網頁顯示MySQL數據時所有漢字都變成了?號。
??
癥狀:用PHPmyAdmin輸入漢字正常,但當PHP網頁顯示MySQL數據時漢字就變成了?號,并且有多少個漢字就有多少個?號。?
原因:沒有在PHP網頁中用代碼告訴MySQL該以什么字符集輸出漢字。?
解決方法:?
1.網頁文件head設置編碼<meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"?/>?
2.PHP頁面在保存的時候使用utf-8編碼保存,可以用記事本或convertz802轉換文件?
3.在MYSQL中新建數據庫的時候數據庫?選擇UTF-8編碼既字符集?設定為?utf-8_unicode_ci(Unicode?(多語言),?不區分大小寫),?
????庫里面?表table的?整理?設置為?utf-8_general_ci?
????表里面的每個字段的?整理?都設置為?utf-8_general_ci?
4.在PHP連接數據庫的時候,也就是mysql_connect()之后加入
?
| ????//設置數據的字符集utf-8?www.ITstudy.cn?? ????mysql_query("set?names?’utf8’ ");?? ????mysql_query("set?character_set_client=utf8");?? ????mysql_query("set?character_set_results=utf8");? |
注意是utf8,不是utf-8?。?
如果你的網頁編碼是gb2312,那就是?SET?NAMES?GB2312。但編輯員強烈推薦網頁編碼、MySQL數據表字符集、PHPmyAdmin都統一使用UTF-8。?
以上四點即可實現全站utf-8編碼,而且在數據庫中也不會有中文亂碼。?
亂碼問題2:用PHPmyAdmin輸入數據時發生錯誤,不讓輸入或出現亂碼?
解決方法:這是設置問題。請安裝最新版PHPmyAdmin或Appserv,打開PHPmyAdmin,MySQL?字符集:?UTF-8?Unicode?(utf8);?MySQL?連接校對應該為utf8_unicode_ci;創建新的數據庫時整理一欄請也選成utf8_unicode_ci。網頁字符集也最好選用utf-8。utf-8是國際標準編碼,是趨勢。?
亂碼問題2:?在本機開發好的MySQL數據表,在本機測試一切正常,但用網站空間商提供的PHPmyAdmin上傳時卻出現問題,上傳失敗。尤其是使用國外PHP空間。??
解決方法:首先查看網站空間商提供的PHPmyAdmin字符集設定,確定自己所建數據表與服務商的是同一編碼。在國外MySQL是不支持gb2312的,甚至最新版的Apache也不支持gb2312。如果是因為編碼不統一,可以重建數據表,當然是用國際標準的UTF8。?
?
轉載于:https://www.cnblogs.com/zhouwenwu/archive/2012/04/05/2433774.html
總結
以上是生活随笔為你收集整理的mysql设置utf8_unicode_ci字符集php页面输出??乱码的解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 教你制作U盘,内存卡,硬盘等等等的漂亮背
- 下一篇: linux cmake编译源码,linu