新聞中心
關(guān)于運(yùn)行php項(xiàng)目出現(xiàn)亂碼的問題
首先明確一點(diǎn),這不是亂碼,而是出錯(cuò)信息
創(chuàng)新互聯(lián)于2013年創(chuàng)立,先為澠池等服務(wù)建站,澠池等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為澠池企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
你一定是改了php.ini里的display_errors為On
這樣就打開了錯(cuò)誤輸出
本來你的程序是有錯(cuò)誤的,但是關(guān)閉了錯(cuò)誤輸出,你看不到
現(xiàn)在有錯(cuò)誤輸出了
看你的錯(cuò)誤提示是鏈接數(shù)據(jù)庫失敗
最后一張圖片還有其他的錯(cuò)誤
你應(yīng)該把error_reporting改為E_ALL ~E_NOTICE這樣就不會有NOTICE級的警告
高手求救,php調(diào)用mysql數(shù)據(jù)庫不能顯示中文呈亂碼?
以前的國外主機(jī)用的Mysql是4.x系列的,感覺還比較好,都無論GBK和UTF-8都沒有亂碼,沒想到新的主機(jī)的Mysql是5.0版本的,導(dǎo)入數(shù)據(jù)后,用Php讀出來全是問號,亂碼一片,記得我以前也曾經(jīng)有過一次切換出現(xiàn)亂碼的經(jīng)驗(yàn),原因肯定是Mysql版本之間的差異問題。
只好查資料,發(fā)現(xiàn)了一個(gè)解決方法,就是在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ù)庫中的中文數(shù)據(jù)時(shí)顯示亂碼
其實(shí),只要注意文件編寫的時(shí)候編碼、數(shù)據(jù)庫的編碼一般就不會有這個(gè)問題的,但是,比如你用DW(dwcs4貌似沒有這個(gè)現(xiàn)象)打開文件,它會以默認(rèn)的編碼讀取,一旦你保存了,那就完了,用EditPlus打開之后,右下角有編碼提示,如果發(fā)現(xiàn)不對,另存為,覆蓋一下,就可以了
PHP讀取Access數(shù)據(jù)庫 出亂碼
access的中文版默認(rèn)是GBK格式的,是無法改變字符類型的,所以用php讀取的時(shí)候會亂碼。
解決方法是:使用iconv轉(zhuǎn)換
一、使用 iconv函數(shù)制作一個(gè)轉(zhuǎn)碼的自定義從GBK轉(zhuǎn)到UTF-8的函數(shù),如以下代碼:
function enc($c){return iconv('gbk','utf-8',$c);}
二、為了寫入數(shù)據(jù)庫的編碼是符合數(shù)據(jù)庫需要的,所以我們還要制作一個(gè)從UTF-8轉(zhuǎn)向GBK的函數(shù):
function dec($c){return iconv('utf-8','gb2312',$c);}
制作好了轉(zhuǎn)碼函數(shù),接下就是正常使用了。在從數(shù)據(jù)庫里面調(diào)數(shù)據(jù)顯示在頁面的時(shí)候使用enc()函數(shù),從頁面提交數(shù)據(jù)到數(shù)據(jù)庫時(shí)使用dec()函數(shù),這樣就可以很好的解決PHP使用UTF-8編碼,ACCESS使用系統(tǒng)默認(rèn)編碼的問題了。
文章標(biāo)題:php執(zhí)行數(shù)據(jù)庫亂碼 php執(zhí)行數(shù)據(jù)庫亂碼怎么解決
本文網(wǎng)址:http://www.dlmjj.cn/article/dopopdh.html