新聞中心
無憂主機解決php網(wǎng)頁中文顯示亂碼問號( ? ? ? )的一些意見
無憂主機(www.gle-technology.com)這幾天通宵達旦,折騰解決一個網(wǎng)站顯示亂碼的問題,雖然很辛苦,但總有所獲,問題終于搞定,對網(wǎng)頁中文顯示亂碼又有了新的認識。特此寫文記錄,一是為了慶祝,二是為了備忘分享。勤做筆記,是好學生,囧囧!! 一、網(wǎng)站亂碼的分類? 這是我自己折騰幾日總結出來的,是否經得起推敲,時間將會告訴我。網(wǎng)站亂碼我把它分為兩類,一是由于mysql數(shù)據(jù)庫導致亂碼問題,二是由于網(wǎng)頁編碼的問題所致。下面我將關于這兩個問題展示討論。 二、為什么會出現(xiàn)亂碼? 出現(xiàn)網(wǎng)頁亂碼的原因,都是由于編碼不一致導致的。這是由于我們在網(wǎng)站開發(fā)、網(wǎng)站遷移、修改、升級等網(wǎng)站運行環(huán)境發(fā)生變化時,由于其編碼不統(tǒng)一導致網(wǎng)頁亂碼問題發(fā)生。如我們通常使用的編碼有utf9和gb2312,網(wǎng)站發(fā)生亂碼問題,必然就是編碼統(tǒng)一引起,我們要解決問題,就必須要從數(shù)據(jù)庫編碼、html網(wǎng)頁(輸出到IE瀏覽器的頁面)、數(shù)據(jù)庫配置文件(定義中文字符的存儲編碼)幾個方面著手,將其統(tǒng)一編碼,其問題就可以解決。 為了讓大家明白一個意思,我要特意解釋一下html網(wǎng)頁的概念,html網(wǎng)頁我這里定義的是所有輸出到IE瀏覽器的頁面我都稱之為html網(wǎng)頁,包括動態(tài)頁面和靜態(tài)頁面。 三、我在解決網(wǎng)頁中文顯示亂碼的思路。 我要處理的網(wǎng)站發(fā)生亂碼的情況是這樣的,html網(wǎng)頁文件中的中文顯示正常,但是部分于mysql發(fā)生關系的內容就顯示為?????。得出這句總結,我發(fā)了一個通宵時候(基礎差,費的時間比較長囧?。。?。 其必然,就是要從mysql數(shù)據(jù)庫編碼入手。關于mysql編碼問題,我這里不多深究了,關于mysql編碼的問題網(wǎng)上很多教程,多的你數(shù)不過來,但是無憂主機(www.gle-technology.com)小編,想提醒幾個特別要注意的問題: 1、? 數(shù)據(jù)庫安裝的時候默認的編碼是什么? 2、? 網(wǎng)站程序使用的mysql數(shù)據(jù)庫編碼是什么? 3、? 你的網(wǎng)站html頁面使用的編碼是什么? 4、? 你的mysql數(shù)據(jù)庫連接文件里面是否指定了中文字符的存儲編碼? 那么,我處理的這個網(wǎng)站的亂碼問題,用戶就犯了其中第一和第四個錯誤,導致由于數(shù)據(jù)庫編碼于網(wǎng)頁編碼不一致導致引起亂碼。解決問題就是將mysql數(shù)據(jù)編碼統(tǒng)一,問題就解決了。 最后的經驗總結: 出現(xiàn)網(wǎng)站中文顯示亂碼問題,在php虛擬主機用戶網(wǎng)站中這是多發(fā)和常見問題,不要慌張。無論是自己用php程序自建網(wǎng)站還是使用php開源程序建站。一旦出現(xiàn)亂碼問題,千萬別被亂碼嚇到,凡事有因必有果。編碼不統(tǒng)一這是因,出現(xiàn)中文字符顯示亂碼這是果,這是一個因果循環(huán)關系,我們只需要冷靜對待,你只要發(fā)點時間去找找,將編碼統(tǒng)一即可解決問題。歡迎無憂主機用戶與我一起交流解決網(wǎng)站亂碼問題的經驗,互相提高學習(Mail:340555017@qq.com)。 美國/香港 純Linux環(huán)境下高端免備案php空間,僅僅只需99元一年起。商務中國域名核心代理直銷50元注冊國際頂級域名。
本文地址:http://www.gle-technology.com/others/2604.html