Re: [請益] phpmyadmin 中文顯示亂碼

看板PHP作者 (香蕉共和國)時間8年前 (2016/04/15 01:14), 8年前編輯推噓6(600)
留言6則, 3人參與, 最新討論串2/3 (看更多)
※ 引述《latria (silly)》之銘言: : 各位好, : 我知道亂碼問題已有許多討論串, : 我也爬過文了 : 可是問題還是不知道出在哪裡>< : 如果有漏爬還請多多見諒 : 問題: : 於"網頁"輸入中文至"phpmyadmin",於"phpmyadmin"檢視,中文呈現為"亂碼" : 於 "網頁" 檢視,中文呈現為"正常" : 於"phpmyadmin"輸入中文至"網頁",於 "網頁" 檢視,中文呈現為"問號" : 於"phpmyadmin"檢視,中文呈現為"正常" : 截圖: : 網頁 http://imgur.com/Y8HUZfw
: phpmyadmin http://imgur.com/Wrupaky
: 開發環境是Cloud9,用 MySQL 連結 phpmyadmin : 已確認過 : 1.html是否加上 : <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> : 2.form表單是否加上 : header("Content-Type:text/html; charset=utf-8"); : 3.phpmyadmin資料庫,資料表,欄位編碼皆已設為utf8_general_ci : 4.連結資料庫的檔案也有加上mysql_query("SET NAMES 'UTF8'"); : 5.也有將php.ini的檔案做修改 : http://imgur.com/zoPeaYs
: 以下是程式碼截圖 : http://imgur.com/a/oFT10 : 先謝謝大家 ==== 新增MySQL資料表時需注意的事項==== 1. 記得「資料表」編碼一定要設成「utf8_unicode_ci」(在上方導覽列的「操作」按鈕 ,點下去以後找到資料表選項這個field,再來找到編碼與排序項,選擇「utf8_unicode_ ci」即可) 2. 在各網頁的MySQL連線程式碼後方加上「mysql_query("SET NAMES UTF8");」這句。 只要動這兩項就好了,其他的建議別動或更改 當然,在每篇的html前也一定要加: <meta http-equiv="Content-Type" content="text/html; charset=utf-8">, 不然不手動設定編碼的話還是會出現亂碼的 就這樣即可安心享用MySQL以及PHP網頁程式了。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.227.192.217 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1460654066.A.139.html ※ 編輯: banana2014 (125.227.192.217), 04/15/2016 01:22:23

04/15 12:04, , 1F
這年頭要用 utf8mb4_unicode_ci 噢
04/15 12:04, 1F

04/15 20:20, , 2F
有做了,還是亂碼><
04/15 20:20, 2F

04/18 00:21, , 3F
utf8mb4 是因為 utf8 不夠用嗎?
04/18 00:21, 3F

04/18 00:25, , 4F
等等,所以utf8mb4是因為MySQL裡面的utf8僅支援3bytes嗎?
04/18 00:25, 4F

04/18 00:27, , 5F
04/18 00:27, 5F

04/18 00:29, , 6F
用 utf8mb4 會自動補足 4 bytes 所以是固定大小的儲存…
04/18 00:29, 6F
文章代碼(AID): #1N3y_o4v (PHP)
文章代碼(AID): #1N3y_o4v (PHP)