亂碼有幾個方面
成都創(chuàng)新互聯(lián)是一家專業(yè)提供云南企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)、HTML5、小程序制作等業(yè)務(wù)。10年已為云南眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。
首先確保數(shù)據(jù)庫的編碼是否正確
其次確保連接數(shù)據(jù)庫的代碼是否指定了正確的編碼。
另外就是html頁面的編碼是否一致,麻煩把問題補(bǔ)充清楚方便排查問題。
你看看 你的數(shù)據(jù)庫是什么編碼? 用相應(yīng)的編碼格式傳入就行了
mysql_query("set?names?'utf8'");
//這句加在mysql_select_db()函數(shù)后面
可能需要修改數(shù)據(jù)庫的配置 一般情況下我們在設(shè)計數(shù)據(jù)庫的時候都會事先確定好要如果是phpAdmin,可以在phpAdmin主頁更改Language為簡體中文。如果是CMD,修改
這個要看你是什么形式去傳遞到PHP頁面,如果你HTML內(nèi)容不是用utf8編碼的話,傳過去的時候就會產(chǎn)生亂碼.如果你是用JS去傳值過去的話,編碼統(tǒng)一還是會出現(xiàn)這個問題,請用JS+escape函數(shù)解決.傳到PHP的時候到網(wǎng)上找一個PHP+unescape反譯...
數(shù)據(jù)類型不正確,createtime應(yīng)該是時間,而不是字符串,希望對你有幫助
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)亂碼了