看板 Database 關於我們 聯絡資訊
以下是某位熱血站友給我的建議,但是我還在嘗試中... 有沒有其他的建議呢?(感謝大家!!!)※※綠字:熱血站友的建議;白字:我的回覆 : 1.請確定MySQL建立資料庫時所使用的編碼方式? a.利用MySQL終端建立database和所屬之table b.然後利用PHPMyAdmin更改"校對"屬性為utf8_bin c.因為是初學者,不清楚如何用MySQL終端更改屬姓,請問我這麼做對嗎? d.你後面提到建立資料庫時選用utf_generic,可是我找不到這個選項。但我有看到 一個叫utf_general_ci的 : 2.PHP, HTML的儲存格式是ANSI還是UTF-8? a.請問我要怎麼查「PHP,HTML的儲存格式」呢? : 3.PHP, HTML檔案中的<meta>中是否有設定charset=utf-8或是charset=big5? a.對於HTML,我有加入下面這一行: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> b.對於HTML,我有加入下面這一行: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> c.請問這樣對嗎? : 以上這三項決定你的錯誤在那一個步驟~ : 一般建議使用utf-8: : 1.在MySQL中建立資料庫時請選用utf8_generic a.所以我不應該用utf8_bin囉?(utf8_bin是我去網路上查的,但不知道它和其他 的差異) b.剛剛改成utf8_general_ci然後測試了一下,仍舊是亂碼 : 2.PHP, HTML儲存時選用格式utf-8 : 3.PHP, HTML檔案中設定<meta>中的charset=utf-8 : 我猜你的問題在於沒注意編碼的問題, : 也就是建立資料庫時是utf-8(預設值), : 所以在MySQL中查詢會顯示亂碼, : 至於回到PHP網頁中顯示正常是因為瀏覽器會自動選擇以utf-8的編碼顯示。 : 如果你執意要使用big5編碼,請在php連結MySQL的SQL指令前執行 : set names big5; : 再執行你的SQL,例如select * from email_list; -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.64.148.197 ※ 編輯: ontario 來自: 61.64.148.197 (11/25 15:41)
mail6543210:1d是那個沒錯。2'需注意php最好是用其他軟體(非記事本 11/25 17:54
ontario:可是我用記事本寫PHP其它的功能沒甚麼問題耶... 11/25 19:58
mail6543210:如果你有用到header函數且server沒開啟buffer才會出現 11/25 20:04
mail6543210:錯誤。然後你最後一個問題:雖然你已經更改,但並不會 11/26 02:00
ontario:還是沒解決 ... 我寫篇網誌,放些螢幕擷取畫面好了 11/26 11:34
mail6543210:更改到原先資料庫中已存的資料 11/27 01:25
heroryo:我都用utf8_unicode_ci 12/22 09:08