search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

網頁亂碼、資料庫顯示亂碼、資料庫顯示空白如何解決?

網頁亂碼、資料庫顯示亂碼、資料庫顯示空白如何解決?

 

在網頁開發過程中,常出現網頁亂碼、資料庫顯示亂碼、資料庫顯示空白...等問題

下面是過去開發的一些經驗

 

A. PHP程式內加入UTF-8宣告

說明:要求瀏覽器使用UTF-8邊碼顯示網頁內容

header("Content-Type:text/html; charset=utf-8");

 

B. HTML程式內加入UTF-8宣告

說明:要求瀏覽器使用UTF-8邊碼顯示網頁內容

注意:A權重 >B權重,且有時B會失效

 

C. 檔案使用記事本開啟後,另存成UTF-8編碼

說明:程式人員把寫好的程式存檔後,系統會採用預設的編碼方式儲存這些程式碼,一般來說windows使用的是ANSI、Linux使用的是UTF-8

utf8_1  

 

D. 在PHP程式內加入資料庫輸入、讀取都採用UTF-8編碼

mysql_query("SET NAMES utf8");

說明:

資料被存入資料庫的路徑是:client → connection → server

從資料庫取出資料的路徑是:server → connection → results

在每一個階段的存取,mysql都會將資料做編碼轉換

因此這行程式是要求mysql使用UTF-8的編碼做轉換

 

E. MySQL的my.ini檔案內檢查預設字符是否為UTF-8(Linux找my.cnf檔)

把所有預設的語系設定改成 -> default-character-set=utf8

說明:修改客戶端和伺服器端的預設編碼格式

 

 

F. 資料庫建立時指定採用UTF-8編碼

說明:這邊的效果和E是一樣的,如果沒有指定預設會使用my.ini(或my.cnf)的預設值

mysql_utf81  

 

G. 資料表欄位建立時採用UTF-8編碼

說明:這邊的效果和E是一樣的,如果沒有指定預設會使用資料庫建立時的預設值

資料表繼承自資料庫的編碼 -> 資料庫的編碼繼承自my.ini(或my.cnf)的預設值 

mysql_utf82  

 

 

 

上述所有設定全部設定完成之後,網頁、資料庫內應該就不會有亂碼產生

提供給大家參考

 

如果覺得對你有幫助的話. 麻煩幫小弟按個讚哦~

 



熱門推薦

本文由 newaurorapixnetnetblog 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦