你是用phpmyadmin連接數據庫的時候,也選擇下字符集,看你插入數據用的什么字符集,你連接數據庫的時候,也選擇相同的字符集,應該就好了

成都創新互聯專注于企業營銷型網站建設、網站重做改版、臨夏網站定制設計、自適應品牌網站建設、H5高端網站建設、成都做商城網站、集團公司官網建設、成都外貿網站制作、高端網站制作、響應式網頁設計等建站業務,價格優惠性價比高,為臨夏等各大城市提供網站開發制作服務。
確保三碼合一就可以了..
第一個是數據庫的字符集
第二個就是存進去的時候字符集
第三個就是顯示的時候的字符集
這三個都有可能造成亂碼;
第一個 舉例是:如果你插入的時候用的是GB2312 ,但你表中的default charset是utf8 那么,就有可能亂碼了.
第二種情況就是你插入正確 但你查詢的時候以UTF8查詢出來,但你在HTML頁面里設置編碼如果非UTF8那么也有可能造成亂碼.
請將數據庫的編碼,表的編碼以及字段的編碼與網頁代碼的編碼保持一致。
另外注意文件本身的編碼與html代碼頭meta中的編碼說明保持一致。
那你看看是不是在連接數據庫的時候采用了utf8格式,語法如mysql_query('set
names
utf8');
其實,只要注意文件編寫的時候編碼、數據庫的編碼一般就不會有這個問題的,但是,比如你用DW(dwcs4貌似沒有這個現象)打開文件,它會以默認的編碼讀取,一旦你保存了,那就完了,用EditPlus打開之后,右下角有編碼提示,如果發現不對,另存為,覆蓋一下,就可以了
數據庫采用UTF8編碼,而頁面申明編碼是GB2312,這是最常見的產生亂碼的原因。這時候在PHP腳本里面直接SELECT數據出來的就是亂碼,需要在查詢前先使用:mysql_query("SET NAMES GBK");或mysql_query("SET NAMES GB2312");來設定MYSQL連接編碼,保證頁面申明編碼與這里設定的連接編碼一致(GBK是GB2312的擴展)。如果頁面是UTF-8編碼的話,可以用:mysql_query("SET NAMES UTF8"); 注意是UTF8而不是一般用的UTF-8。假如頁面申明的編碼與數據庫內部編碼一致可以不設定連接編碼。
事實上MYSQL配置文件my.ini中定義了2個默認編碼,分別是[client]里的default-character-set和[mysqld]里的default-character-set來分別設定默認時候客戶端連接和數據庫內部所采用的編碼。上面指定的編碼其實是MYSQL客戶端連接服務器時候的命令行參數character_set_client,來告訴MYSQL服務器接受到的客戶端數據是什么編碼的,而不是采用默認編碼。
轉自:
你的數據庫是什么編碼的?默認的latin編碼是不支持漢字的,改成utf8或者utf8mb4編碼,然后你的PHP文件編碼也使用utf8編碼
本文名稱:php到數據庫中文亂碼 php查詢數據庫中文亂碼
標題URL:http://www.yijiale78.com/article34/doddppe.html
成都網站建設公司_創新互聯,為您提供軟件開發、商城網站、微信小程序、品牌網站制作、虛擬主機、面包屑導航
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯