php資料庫操作之資料顯示亂碼終極解決辦法
php連接mysql亂碼是開發(fā)過程當(dāng)中,這是開發(fā)中新手常遇到的問題。 根據(jù)實際大家遇到的問題,將亂碼的問題,總結(jié)成了9個重點來徹底解決連接後亂碼的問題。
解決亂碼問題的核心思想,就是:一定要多個不同的檔案系統(tǒng)中一定要統(tǒng)一編碼。
這9重點分別是:
????1.html編碼與MySQL編碼一致
????2.PHP編碼與MySQL編碼一致
????3.若有header頭發(fā)送字元集,請與資料庫一樣
????4.<meta http-equiv=“Content-Type”content=“text/html; charset=utf-8”/>想要和頁面的文字編碼一致
????5.資料庫建置庫的字元集要統(tǒng)一
????6.表格的字元集要統(tǒng)一
????7.列的字元集要統(tǒng)一(表設(shè)了,列就預(yù)設(shè)寫表的)
????8.連接,校驗的字元集要統(tǒng)一
????9.結(jié)果集的字元集要統(tǒng)一
#一,檔案編碼
html和PHP檔案的編碼,範(fàn)例中:拿notepad++來示範(fàn)。將PHP和html都要設(shè)為這種字元集。
一定要設(shè)定為utf-8無BOM格式。
二、header頭編碼
#如果php中有header頭,一定要是utf-8的
header('content-type:text/html;charset=utf-8');
#三、網(wǎng)頁頭檔編碼
如果html檔案編碼是utf-8的也要設(shè)定為一置
<meta http-equiv=“Content-Type”content=“text/html; charset=utf-8” />
四、創(chuàng)建資料庫的編碼
#五、表格和列創(chuàng)建的時候表為utf-8
六、連接,結(jié)果、校驗字元集設(shè)定
透過mysqli_set_charset('utf8')來MySQL連接、結(jié)果和校驗的字元集設(shè)定。
附註:資料庫的字元集宣告和檔案中的略有不同。 utf8為mysql資料庫的,utf-8為文件中使用的。