無論數(shù)據(jù)庫或者是頁面
為泗陽等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及泗陽網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為做網(wǎng)站、成都做網(wǎng)站、泗陽網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
出現(xiàn)亂碼
問號
空白
那基本就是編碼不一致的問題。你數(shù)據(jù)庫設(shè)置了什么編碼
比如是utf-8
那么你頁面也設(shè)置這個編碼
并且使用header("content-type:
text/html;
charset=utf-8");讓瀏覽器也使用這個編碼
并且在連接數(shù)據(jù)庫的時候
mysql_query("set
names
utf8");
那么就不會出現(xiàn)亂碼
問號
空白等情況了。
其實就是讓數(shù)據(jù)庫
頁面
瀏覽器編碼一致就可以。你檢查一下。
你phpmyadmin也沒設(shè)置好。把表整理為utf8-unicode-ci
,字段也是。連接校隊也是。首先,要在phpmyadmin
顯示正常。
下面這個是數(shù)據(jù)庫輸出時,網(wǎng)頁顯示亂碼的處理。
mysql_query("set
name
xxx");
xxx
是你的網(wǎng)頁編碼。
這句話放在SQL連接成功語句后。但是要在SQL語句執(zhí)行之前。
PHP與數(shù)據(jù)庫的編碼應(yīng)一致
1. 修改mysql配置文件my.ini或my.cnf,mysql最好用utf8編碼
[mysql]
default-character-set=utf8
[mysqld]
default-character-set=utf8
default-storage-engine=MyISAM
在[mysqld]下加入:
default-collation=utf8_bin
init_connect='SET NAMES utf8'
2. 在需要做數(shù)據(jù)庫操作的php程序前加mysql_query("set names
'編碼'");,編碼和php編碼一致,如果php編碼是gb2312那mysql編碼就是gb2312,如果是utf-8那mysql編碼就是 utf8,這樣插入或檢索數(shù)據(jù)時就不會出現(xiàn)亂碼了
以前的國外主機用的Mysql是4.x系列的,感覺還比較好,都無論GBK和UTF-8都沒有亂碼,沒想到新的主機的Mysql是5.0版本的,導(dǎo)入數(shù)據(jù)后,用Php讀出來全是問號,亂碼一片,記得我以前也曾經(jīng)有過一次切換出現(xiàn)亂碼的經(jīng)驗,原因肯定是Mysql版本之間的差異問題。
只好查資料,發(fā)現(xiàn)了一個解決方法,就是在mysql_connect后面加一句SET
NAMES
UTF8,即可使得UTF8的數(shù)據(jù)庫消除亂碼,對于GBK的數(shù)據(jù)庫則使用SET
NAMES
GBK,代碼如下:
$mysql_mylink
=
mysql_connect($mysql_host,
$mysql_user,
$mysql_pass);
mysql_query("SET
NAMES
'GBK'");
名稱欄目:php數(shù)據(jù)庫不顯示中文 php怎么顯示數(shù)據(jù)庫相應(yīng)id的內(nèi)容
標(biāo)題路徑:http://www.muchs.cn/article26/dohidjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、企業(yè)網(wǎng)站制作、品牌網(wǎng)站建設(shè)、定制開發(fā)、Google、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)