你把文件保存成UTF-8看下 文件默認(rèn)編碼是和IDE 有關(guān)的。
創(chuàng)新互聯(lián)從2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目做網(wǎng)站、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元淮上做網(wǎng)站,已為上家服務(wù),為淮上各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792
set names 只是告訴數(shù)據(jù)庫,取出和存入的字符編碼是什么,與數(shù)據(jù)庫內(nèi)部使用什么編碼儲存沒有關(guān)系。
解決亂碼有幾種方式:在讀取數(shù)據(jù)庫的時候設(shè)置連接編碼:mysql_query(set names utf8);在讀取數(shù)據(jù)庫的php文件的頭部加:header(Content-type:text/html;charset=utf-8);php文件不是utf8格式的編碼,需要轉(zhuǎn)化。
出現(xiàn)亂碼肯定就是編碼不對嘍。一般注意編碼的地方有幾個。最好都保持一致。數(shù)據(jù)庫編碼 文件編碼 文件保存的格式編碼 都保持一致的話不會出現(xiàn)亂碼的。
!-- 聲明頭文件,嘿嘿header管不到這里啊。
亂碼有幾個方面 首先確保數(shù)據(jù)庫的編碼是否正確 其次確保連接數(shù)據(jù)庫的代碼是否指定了正確的編碼。另外就是html頁面的編碼是否一致,麻煩把問題補(bǔ)充清楚方便排查問題。
去MYSQL里面設(shè)置,不要在PHP里設(shè)置MYSQL的編碼,亂碼肯定就是編碼問題無疑,推薦你先把MYSQL里面表的編碼改好,然后再把PHP的編碼改好,這樣就應(yīng)該沒問題了。
只是告訴數(shù)據(jù)庫,取出和存入的字符編碼是什么,與數(shù)據(jù)庫內(nèi)部使用什么編碼儲存沒有關(guān)系。
樓上正解,是編碼不對…是php向mysql讀寫時編碼沒統(tǒng)一。
數(shù)據(jù)庫編碼 文件編碼 文件保存的格式編碼 都保持一致的話不會出現(xiàn)亂碼的。還有就是支持中文最好用utf-8 你看看你的php頁面是什么編碼。查看方法可以用editplus打開。點(diǎn)file-save as保存為utf-8再試試。
php數(shù)據(jù)庫中文亂碼的解決辦法:創(chuàng)建數(shù)據(jù)庫時,規(guī)定字符類型為uft8;創(chuàng)建表時,規(guī)定字符類型為utf8;在PHP的MySQL連接函數(shù)中,添加語句“mysql_query(set names utf8)。
PHP頁面語言本身的編碼類型不合適,這時候,你直接在腳本中寫的中文肯定是亂碼,不用說數(shù)據(jù)庫了 解決方法:選擇UTF8或者gb2312,這樣客戶瀏覽器會自動選擇并出現(xiàn)正確的中文顯示。
數(shù)據(jù)庫采用UTF8編碼,而頁面申明編碼是GB2312,這是最常見的產(chǎn)生亂碼的原因。
原因:這個是因?yàn)槟愕臑g覽默認(rèn)解析編碼不是 UTF-8,這種情況瀏覽器他不知道你的文字要顯示 什么編碼。解決方案:要么設(shè)置瀏覽器默認(rèn)編碼為 UTF-8 在輸出打印前,先輸出 來告訴瀏覽器你想要使用的編碼方式。
將瀏覽器中的編碼改成utf-8,數(shù)據(jù)庫中也是。在php頁面首行加上header(Content-type:text/html;charset=utf-8);,必須首行,前面不能有輸出。
一般來說,亂碼問題其實(shí)也就是編碼不一致導(dǎo)致的。