MYSQL GB2312資料轉為UTF8資料

來源:互聯網
上載者:User

標籤:

首先,對論壇的管理人還有論壇某些冷眼旁觀的人們表示遺憾。
昨天遇到了GBK和UTF8互轉問題,查了不少資料都沒理出頭緒,發帖提問無人問津,給管理留言亦是杳無音信。
花費了幾個小時,查了不少資料(其他論壇),經過N詞失敗之後終於轉換成功,在這裡分享給大家,希望能給有需要的同學們提供協助。

廢話不說了,下面是轉換必要的幾步,不一定適合所有人,所以希望大家在開始之前務必備份好資料。(資料庫和模板資料)


GB2312轉UTF8:
第一步:開啟phpMyAdmin,將dedecms資料庫全部匯出(export>>save as file >>go)
第二步:用記事本開啟第一步中匯出的檔案,將其中的的GB2312全部替換成utf8,然後另存,另存時候編碼選utf-8。
第三步:安裝UTF8編碼的dedecms程式
第四步:開啟phpMyAdmin,將新安裝的utf8版本的資料庫中資料清空(Structure>>select all>>go)
第五步:匯入,選擇剛才第二步另存的資料庫檔案。(Import>>go)
到此為止,資料轉換並匯入成功。

///////////////////////////////

souroot註:

資料庫轉為UTF-8後,還有三件事:

1)PHP對資料庫操作前都加上  mysqli_query($conn,"set names utf8"), 這樣做是為了在傳輸,返回結果等都是用的utf-8編碼;

如果mysqli_query($conn,"set names gb2312"), 後台會在操作資料庫時,比如讀完資料庫的資料,先轉成GB2312再傳給用戶端;或者拿到GB2312的資料後,專為資料庫的編碼(這裡是UTF-8),再儲存到資料庫;

2)網頁上註明使用的是UTF-8編碼

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

3)對於有輸出html文字的php檔案,檔案本身要專為UTF8格式編碼(最好是無BOM格式,不然PHP認為BOM格式本身已經算輸出了,這個會影響session start);

MYSQL GB2312資料轉為UTF8資料

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.