[心得] 網頁亂碼問題解決法

看板PHP作者 (貓貓的大玩偶)時間18年前 (2007/08/17 10:08), 編輯推噓10(10016)
留言26則, 8人參與, 最新討論串1/4 (看更多)
剛剛上來整理版面發現亂碼問題越來越多 很多PHP的初學者常常遇到亂碼的問題而感到困擾,這邊我就整理一下解決辦法 如果用了之後還有遇到再上來版上問 首先,亂碼的問題幾乎都來自於古老的Big5編碼,因此要有個觀念 若非必要 不要用Big5編碼!不要用Big5編碼!不要用Big5編碼! 請愛用UTF-8編碼!請愛用UTF-8編碼!請愛用UTF-8編碼! 使用編碼就像一堆人說話一樣,如果一個人講了火星話,自然其他地球人聽不懂 所以請你先確定以下的環節有沒有做好: ◎ 資料庫編碼設定UTF-8了嗎? ◎ PHP程式檔案用UTF-8編碼了嗎?有沒有不小心用到BOM? ◎ HTML有用UTF-8嗎?有沒有在head的地方設定以下的Meta Tag? <meta http-equiv=content-type content="text/html; charset=utf-8" /> 以上都做到的話,應該可以解決99%的編碼問題,剩下的再到版上發問吧! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.20.46.232

08/17 10:09, , 1F
html 一定是:
08/17 10:09, 1F

08/17 10:10, , 2F
第一行: <!DOCTYPE
08/17 10:10, 2F

08/17 10:10, , 3F
第二行: <html lang=
08/17 10:10, 3F

08/17 10:10, , 4F
第三行: <meta http-equiv="content-type" charset
08/17 10:10, 4F

08/17 10:11, , 5F
之後有空再寫 <title></title>
08/17 10:11, 5F

08/17 10:14, , 6F
我的第一行是<?xml version="1.0" encoding="UTF-8"?> XD
08/17 10:14, 6F

08/17 10:32, , 7F
版主辛苦了,推!
08/17 10:32, 7F

08/17 10:56, , 8F
用記事本編輯時 存成utf-8編碼
08/17 10:56, 8F

08/17 10:59, , 9F
資料庫語法前加上mysql_query("SET CHARACTER SET 'utf8'")
08/17 10:59, 9F

08/17 11:00, , 10F
這些也是方法之一
08/17 11:00, 10F

08/17 11:01, , 11F
中文檔名下載時因為IE無法自動判別檔名編碼 因此要改成BIG5
08/17 11:01, 11F

08/17 11:02, , 12F
mysql_query("SET CHARACTER SET 'big5'") 其他部分則用utf-8
08/17 11:02, 12F

08/17 11:02, , 13F
這是我以前遇過的問題 XD
08/17 11:02, 13F

08/17 11:51, , 14F
記事本存UTF8會有BOM
08/17 11:51, 14F

08/17 11:51, , 15F
用pspad吧
08/17 11:51, 15F

08/17 11:52, , 16F
亂碼的問題主要是因為設定的編碼與資料編碼不一 產生的
08/17 11:52, 16F

08/17 11:53, , 17F
並不是使用utf 8就不會有亂碼
08/17 11:53, 17F

08/17 11:53, , 18F
如果沒有要跟其他編碼互通 big5也沒什麼滔天大罪
08/17 11:53, 18F

08/17 11:54, , 19F
畢竟有80%以上的繁體中文網頁是big5
08/17 11:54, 19F

08/17 11:54, , 20F
若你要跟這些網頁互通的時候使用utf8 會讓你很XO
08/17 11:54, 20F

08/17 11:55, , 21F
80%是我保守估計 實際上應該更高....
08/17 11:55, 21F

08/17 11:56, , 22F
適當的使用合適的編碼 才是正確的
08/17 11:56, 22F

08/17 15:46, , 23F
因地制宜才對, 偏廢某種編碼一定會出問題
08/17 15:46, 23F

08/17 17:53, , 24F
這篇文章是以初學者而言吧?
08/17 17:53, 24F

08/17 18:02, , 25F
也些公司要求一定要用Big5! 就要順他們的意呀....
08/17 18:02, 25F

08/17 18:39, , 26F
初學者還是建議用UTF-8,當然實際應用上不用這麼死板
08/17 18:39, 26F
文章代碼(AID): #16nGC6Ad (PHP)
文章代碼(AID): #16nGC6Ad (PHP)