首頁 >web前端 >前端問答 >html文字為什麼會亂碼

html文字為什麼會亂碼

醉折花枝作酒筹
醉折花枝作酒筹原創
2021-04-14 18:20:5515983瀏覽

html文字亂碼的原因:1.網頁是gbk編碼,html文檔是utf-8編碼,編碼方式不一致導致亂碼;2、html網頁編碼是gbk,程式從資料庫中調出的內容是utf-8編碼,編碼方式不一致導致亂碼。

html文字為什麼會亂碼

本教學操作環境:windows7系統、CSS3&&HTML5版、Dell G3電腦。

造成html網頁亂碼原因主要是html原始碼內中文字內容與html編碼不同造成。但無論是哪種情況造成亂碼在網頁開始時候都需要設定網頁編碼。

<meta charset="utf-8">

html網頁亂碼效果截圖html文字為什麼會亂碼

亂碼造成原因

1、例如網頁原始碼是gbk的編碼,而內容中的文字是utf- 8編碼的,這樣瀏覽器開啟即會出現html亂碼。反之網頁是編碼utf-8,內容是gbk也會出現亂碼。

2、html網頁編碼是gbk,而程式從資料庫中調出呈現是utf-8編碼的內容也會造成編碼亂碼。

解決亂碼方法

第一種,html網頁原始碼編碼與中文字輸入編碼不同。

解決方法:

使用軟體進行編輯HTML網頁內容,建議使用DW軟體進行HTML程式碼編輯開發。

盡量不要直接使用記事本來編輯HTML程式碼。

第二種,如果網頁設定編碼是gbk的,而資料庫儲存資料編碼格式是UTF-8的,這個時候程式查詢資料庫資料顯示資料前進鄉程式轉碼即可。

例如PHP程式mysql查詢顯示資料轉碼:
mysql_query("SET NAMES 'UTF8'"); //將查詢資料轉碼為utf8,也就是轉換為utf-8
mysql_query("SET NAMES 'GBK'");//將查詢資料轉碼為GBK,如gbk2312

在寫資料庫連線檔案時,寫成:

$conn = mysql_connect("$host","$user","$password"); 
mysql_query("SET NAMES &#39;UTF8&#39;");
 mysql_select_db("$database",$conn);

然後在做頁面時,注意這句:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

這樣不管輸入資料庫的中文,還是頁面顯示,就都正常了。
在DW CS4版裡,預設產生的也是utf8頁面。

同樣的,如果一開始寫資料庫連接檔時寫成:

mysql_query("SET NAMES &#39;GBK&#39;");

那頁面也要相應變成:

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

其它asp程式或其它程式語言網站根據實際情況到百度查詢轉換編碼方法。

推薦學習:html影片教學

以上是html文字為什麼會亂碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn