自己寫PHP也有一年多了,然後編碼問題卻老是沒有得到好的解決,自己的情況是這樣的,
網頁顯示完全正常,在phpmyadmin數據庫顯示中文亂碼,不管是簡體還是繁體,只要是中文都是如下顯示形式:梧州旅游
然而自己編寫的網頁中卻顯示完全正常,不管是繁體,還是簡體,都不會亂碼情況.
當然我的網頁是保存為utf-8格式的,再加上我讀庫操作時加上了mysql_query("set names 'utf-8'");的語句,所以在網頁中看到的是完全正常,當然只有在phpmyadmin中顯示是亂碼,如果你看到這裡,網頁部分是亂碼,的話,按我說的,把網頁用記事本另存為utf-8格式,然後在網頁中指定<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />後,再在讀取數據庫時加上mysql_query("set names 'utf-8'");一定不會出現亂碼了,當然數據庫,數據表,字段也要保存為utf8_general_ci編碼形式的,通過以上操作,在網頁中是絕對不會出現亂碼情況了,今天我在這裡說明的就是在phpmyadmin中顯示為亂碼問題,這是一篇解決亂碼的終級篇文章,好好看完這篇文章後,亂碼不再會出現在我們程式與數據庫中.
好,看了用文字部分後,你在網頁中顯示是絕對不會再出現亂碼問題了,然而,在phpmyadmin中顯示中文還是亂碼,自己用了一天的時間,好好分析的自己的代碼,編碼格式,還有phpmyadmin的編碼格式,搜GG,問高深技術人員,都無果,當然求人不如求已,自己再慢慢分析編碼的問題,終於找到了自己在phpmyadmin中為什麼會顯示亂碼的問題,如果你想去深入的了解一下編碼的問題,為以後不再讓亂碼困擾著你,你要去查一下這兩個區別:utf8和utf-8,別看他什麼都一樣,只多了一條線,差一線,就會把你的phpmyadmin搞成亂碼,好,分析自己出現亂碼情況,把紅色字部分改,以下是防亂碼出現終級的注意方法,包括網頁中與phpmyadmin中的亂碼問題:
1 把所有網頁用記事本另存為utf-8, 如圖:
注:ANSI是適用於BIG5和GBK的
2 在自己網頁中指定<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />編碼格式,這個比較簡單,不多說明
3 數據庫操作加上mysql_query("set names 'utf8'");看清了是utf8,不是utf-8,相關一線,用utf-8在phpmyadmin中就會是亂碼,自己寫程式一年多了,一直用utf-8,導至在phpmyadmin一直是亂碼格式,現在改回utf8終於把phpmyadmin顯示中文亂碼問題給解決了,不過一個得注意,改成utf8後,你之前入庫的中文在網頁中讀出來會全部是亂碼,如果內容非常多的就不要改了,最多只是phpmyadmin是亂碼,網頁中顯示總是正常的,這裡改成utf8是以後開發程式時用這個就是網頁,phpmyadmin全部顯示會正常,為亂碼問題說88.
4 數據庫的編碼格式為utf8_general_ci ,表格式也是utf8_general_ci,中文字段也是用utf8_general_ci,看phpmyadmin的載圖:
以上是庫和表載整理為utf8_general_ci ,然後是字段載圖:
好了,做好這幾步用utf8編碼就不會再會有亂碼出現了,原創文章,轉載請注明轉自騰馬PHP博客