php連接mysql亂碼是開發(fā)過程當(dāng)中,很多朋友經(jīng)常遇到的問題,我們總結(jié)了9步來(lái)徹底解決連接后亂碼的問題,一個(gè)核心思想,就是:一定要多個(gè)不同的文件系統(tǒng)中一定要統(tǒng)一編碼。
我們將這些叫做:數(shù)據(jù)庫(kù)字符集獨(dú)孤9賤:
?第一賤:html編碼與MySQL編碼一致
?第二賤:PHP編碼與MySQL編碼一致
?第三賤:若有header頭發(fā)送字符集,請(qǐng)與數(shù)據(jù)庫(kù)一樣
?第四賤:要和頁(yè)面的文字編碼一致
?第五賤:數(shù)據(jù)庫(kù)建庫(kù)的字符集要統(tǒng)一
?第六賤:表的字符集要統(tǒng)一
?第七賤:列的字符集要統(tǒng)一(表設(shè)了,列就默認(rèn)寫表的)
?第八賤:連接,校驗(yàn)的字符集要統(tǒng)一
?第九賤:結(jié)果集的字符集要統(tǒng)一
我們通過截圖來(lái)完成其中的各個(gè)不同的步驟。下例中所有的字符集要均為utf-8來(lái)演示
1,html和PHP文件的編碼,示例中:拿notepad++來(lái)演示。將PHP和html都要設(shè)為這種字符集。
2,如果php中有header頭,一定要是utf-8的
header('content-type:text/html;charset=utf-8');
3,如果html文件編碼是utf-8的也要設(shè)置為一置
4,數(shù)據(jù)庫(kù)創(chuàng)建的時(shí)候庫(kù)為utf8
5,表和列創(chuàng)建的時(shí)候表為utf-8
6,數(shù)據(jù)庫(kù)的連接,校驗(yàn)為utf-8
通過mysql_set_charset('utf8')來(lái)完成
注:數(shù)據(jù)庫(kù)的字符集聲明和文件中的略有不同。utf8為mysql數(shù)據(jù)庫(kù)的,utf-8為文件中使用的。
如果你覺得眼前需要更好的提高你可以來(lái)千鋒學(xué)PHP,國(guó)內(nèi)排名第一的PHP機(jī)構(gòu)。