為什么HTML頁面亂碼與處理方法
發(fā)表時間:2024-05-08 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]有時候我們做出來的網(wǎng)頁打開以后是亂碼,那么我們需要怎么解決這種情況呢?以下就給大家?guī)韥y碼造成的原因以及解決亂碼的方法。一、亂碼造成原因 1、比如網(wǎng)頁源代碼是gbk的編碼,而內(nèi)容中的中文字是utf-8編碼的,這樣瀏覽器打開即會出現(xiàn)html亂碼。反之網(wǎng)頁是編碼utf-8,內(nèi)容是gbk也會出現(xiàn)亂碼。2...
有時候我們做出來的網(wǎng)頁打開以后是亂碼,那么我們需要怎么解決這種情況呢?以下就給大家?guī)韥y碼造成的原因以及解決亂碼的方法。
一、亂碼造成原因
1、比如網(wǎng)頁源代碼是gbk的編碼,而內(nèi)容中的中文字是utf-8編碼的,這樣瀏覽器打開即會出現(xiàn)html亂碼。反之網(wǎng)頁是編碼utf-8,內(nèi)容是gbk也會出現(xiàn)亂碼。
2、html網(wǎng)頁編碼是gbk,而程序從數(shù)據(jù)庫中調(diào)出呈現(xiàn)是utf-8編碼的內(nèi)容也會造成編碼亂碼。
3、瀏覽器不能自動檢測網(wǎng)頁編碼,造成網(wǎng)頁亂碼。
二、解決亂碼方法
第一種,html網(wǎng)頁源代碼編碼與中文字輸入編碼不同。
解決方法:
使用軟件進(jìn)行編輯HTML網(wǎng)頁內(nèi)容,推薦使用DW軟件進(jìn)行HTML代碼編輯和開發(fā)。
盡量不要直接使用記事本進(jìn)行編輯HTML代碼。
第二種,如果網(wǎng)頁設(shè)置編碼是gbk的,而數(shù)據(jù)庫儲存數(shù)據(jù)編碼格式是UTF-8的,這個時候程序查詢數(shù)據(jù)庫數(shù)據(jù)顯示數(shù)據(jù)前進(jìn)鄉(xiāng)程序轉(zhuǎn)碼即可。
例如PHP程序+mysql查詢顯示數(shù)據(jù)轉(zhuǎn)碼:
1、mysql_query("SET NAMES 'UTF8'"); //將查詢數(shù)據(jù)轉(zhuǎn)碼為utf8,也就是轉(zhuǎn)換為utf-8
2、mysql_query("SET NAMES 'GBK'");//將查詢數(shù)據(jù)轉(zhuǎn)碼為GBK,如gbk2312
在寫數(shù)據(jù)庫連接文件時,寫成:
$conn = mysql_connect("$host","$user","$password");
mysql_query("SET NAMES 'UTF8'");
mysql_select_db("$database",$conn);
然后在做頁面時,注意這句:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
這樣不管輸入數(shù)據(jù)庫的中文,還是頁面顯示,就都正常了。
在DW CS4版里,默認(rèn)生成的也是utf8頁面。
同樣的,如果一開始寫數(shù)據(jù)庫連接文件時寫成:
mysql_query("SET NAMES 'GBK'");
那頁面也要相應(yīng)變成:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
其它asp程序或其它程序語言網(wǎng)站根據(jù)實(shí)際情況到百度查詢轉(zhuǎn)換編碼方法。
第三種,瀏覽器造成亂碼。
這個可能是你網(wǎng)頁沒有設(shè)置meta charset編碼造成。導(dǎo)致瀏覽器不能識別你網(wǎng)頁默認(rèn)編碼類型。解決方法:
1、如果瀏覽器瀏覽時候出現(xiàn)網(wǎng)頁亂碼,在瀏覽器中找到轉(zhuǎn)換編碼的菜單。
在IE9瀏覽器中需要轉(zhuǎn)碼的網(wǎng)頁空白出右鍵鼠標(biāo),即可選擇“編碼”。
傲游瀏覽器中瀏覽需要轉(zhuǎn)碼的網(wǎng)頁時,菜單“查看”-->“編碼”即可選擇轉(zhuǎn)換編碼
谷歌瀏覽器中瀏覽需要轉(zhuǎn)碼的網(wǎng)頁時,點(diǎn)擊右上角“三橫”圖標(biāo)選擇“工具”-->“編碼”即可選擇切換網(wǎng)頁編碼達(dá)到讓瀏覽器瀏覽此網(wǎng)頁不是亂碼。
2、如果自己開發(fā)網(wǎng)頁,必須網(wǎng)頁加入meta charset編碼標(biāo)簽。
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
或
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
假如轉(zhuǎn)換時候,不是記事本編輯添加meta charset編碼標(biāo)簽就完成,這樣同樣會造成亂碼,那是因?yàn)橹苯佑浭卤咎砑踊蛐薷木幋a格式后,而對應(yīng)Html超文本文檔內(nèi)容并沒有隨添加或修改編碼格式而變化,這個時候需要真正意義上的轉(zhuǎn)碼,所以最好借助開發(fā)軟件進(jìn)行編碼添加與修改。
推薦DW軟件中修改編碼。在DW軟件中進(jìn)行編碼修改或添加,并重新載入編碼的網(wǎng)頁。
網(wǎng)頁亂碼的解決方法有需要的朋友可以保存一下,也請大家持續(xù)關(guān)注本站的其他更新。
相關(guān)閱讀:
HTML里的checkbo怎么使用
HTML里的命名規(guī)則
html中的字體顏色怎么修改
以上就是為什么HTML網(wǎng)頁亂碼與解決方法的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!
網(wǎng)站建設(shè)是一個廣義的術(shù)語,涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。