欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

二招解決php亂碼問題

 更新時(shí)間:2012年03月25日 20:42:01   作者:  
PHP的亂碼問題已經(jīng)說了N+1遍了,但還是經(jīng)??吹叫率植恢涝撊绾谓鉀Qphp亂碼問題,在此本人再重新給總結(jié)一下,希望對(duì)新手有點(diǎn)幫助
php網(wǎng)頁(yè)出現(xiàn)亂碼一般是在建立數(shù)據(jù)庫(kù)時(shí)用的編碼和php網(wǎng)頁(yè)的編碼不同造成的,

用phpmyadmin建立的數(shù)據(jù)庫(kù)如果你不指定編碼他默認(rèn)是latin1_swedish_ci 編碼,既瑞典語(yǔ)不區(qū)分大小寫,而我們中國(guó)做的網(wǎng)頁(yè)不是GBK就是GB2312編碼,這樣不出現(xiàn)亂碼才怪.

1,建立數(shù)據(jù)庫(kù)時(shí)指定編碼.

在此再嘮叨一下常用的編碼,免的新手又迷茫:

如果你做的是簡(jiǎn)體中文網(wǎng)頁(yè),那么你在建立數(shù)據(jù)庫(kù)時(shí)用GB2312編碼,gb2312_chinese_ci.

如果你做的是繁體中文網(wǎng)頁(yè),那么你建立數(shù)據(jù)庫(kù)時(shí)要用gib5編碼, big5_chinese_ci

如果你做的網(wǎng)頁(yè)有簡(jiǎn)體也有繁體中文,那么推薦你用GBK編碼,gbk_chinese_ci . GBK包含的字碼比GB2312要多,當(dāng)然繁體也在其中.

如果你做的是多國(guó)語(yǔ)言網(wǎng)頁(yè),那么推薦你用UTF-8編碼 . mysql中有二種utf8編碼可供選擇 : utf8_unicode_ci與utf8_general_ci 筆者一般用utf8_general_ci ,關(guān)于這二種編碼的區(qū)別,請(qǐng)參考本站的另一篇文章: Mysql中校對(duì)集utf8_unicode_ci與utf8_general_ci的區(qū)別

我們用UTF-8編碼為例建立數(shù)據(jù)庫(kù)如圖:

 

2,用php連接數(shù)據(jù)庫(kù)時(shí)用mysq_query 設(shè)定一下編碼
語(yǔ)法: mysql_query("SET NAMES 'utf8'");
例如:
復(fù)制代碼 代碼如下:

$conn=mysql_connect('127.0.0.1','root','123456');
mysql_query("set names 'utf8'",$conn); //解決亂碼
mysql_select_db('test1',$conn);

一般情況下只要你做好了這二步,你的程序是不會(huì)出現(xiàn)亂碼的
二般情況:
二般情況一般出現(xiàn)的不多,多出現(xiàn)在做的程序語(yǔ)言比較多,比如有時(shí)做utf8的,有時(shí)做gb2312的,有時(shí)又要做big5的網(wǎng)頁(yè),用IDE建立的.php文件編碼和程序要顯示的編碼不同而引起的.
比如,我上次做了個(gè)gb2312的簡(jiǎn)體中文網(wǎng)頁(yè),現(xiàn)在老板又有吩咐要做個(gè)gbi5網(wǎng)頁(yè),但我的ide用的卻是gb2312的編碼
就拿我常用的IDE Dreamweaver來說吧

 

ide新建的網(wǎng)頁(yè)是gb2312,而我卻把建好的網(wǎng)頁(yè)改成big5的了,這樣怎么會(huì)不出現(xiàn)亂碼呢,解決的方法很簡(jiǎn)單,重新另存為一下,指定一下編碼就OK了,

如果還搞不定,那么在網(wǎng)頁(yè)頭部加一行http頭信息

header("Content-Type:text/html;charset=utf-8");

注意:在發(fā)送header頭信息時(shí)header前面不可以有任何輸出,包括空格在內(nèi).

好了寫了這么多,快看看你的程序?qū)儆谀膫€(gè)情況引起的亂碼吧.

相關(guān)文章

最新評(píng)論