導航:首頁 > 編程語言 > php插入資料庫亂碼

php插入資料庫亂碼

發布時間:2023-02-05 07:00:08

php插入數據到資料庫出中,中文出現亂碼~~全是問號

你把你的這兩行代碼,順序返過來
mysql_query($sql,$conn)
or
die(mysql_error());
mysql_query("set
names
'GBK'");
改為
mysql_query("set
names
'GBK'");
mysql_query($sql,$conn)
or
die(mysql_error());

㈡ PHP使用utf8插入中文數據到MySQL中文顯示會亂碼怎麼辦

資料庫使用utf8編碼,需要在操作的過程中統一全部編碼。

1.資料庫默認編碼

CREATEDATABASE`test`DEFAULTCHARACTERSET'utf8';

2.表默認編碼

CREATETABLE`tablea`(
`id`INTNOTNULLAUTO_INCREMENT,
`title`VARCHAR(100)NULL,
)ENGINE=InnoDBDEFAULTCHARSET=utf8;

3.欄位默認編碼

默認情況下,欄位的編碼同表的編碼,但是如果修改了表的編碼,欄位編碼不會同步修改,需要手動修改

這里修改編碼測試我將utf8 改為 gb2312 ,僅用於觀察修改後的情況(實際使用中可能是將gbk修改為utf8)

ALTERTABLE`test`.`tablea`CHARACTERSET=gb2312;

--修改表編碼後,查看建表語句
showcreatetable`tablea`;

--可以看到輸出的建表語句中欄位單獨設置了編碼
CREATETABLE`tablea`(
`id`INTNOTNULLAUTO_INCREMENT,
`title`VARCHAR(100)CHARACTERSETutf8NULL,
)ENGINE=InnoDBDEFAULTCHARSET=gb2312;

--需要手動修改欄位編碼
ALTERTABLE`tablea`
CHANGECOLUMN`title``title`VARCHAR(100)CHARACTERSET'gb2312'NULLDEFAULTNULL;

4.當前資料庫連接的編碼

連接數時設置編碼

//PDO連接
$db=newPDO('mysql:host=myhost;dbname=test','login','password',
array(PDO::MYSQL_ATTR_INIT_COMMAND=>'SETNAMES'UTF8'')
);

//mysqli連接
$link=mysqli_connect("127.0.0.1","my_user","my_password","test");
mysqli_query($link,"SETNAMES'utf8';");

通過以上幾步操作,基本可以保證資料庫使用過程中不會出現亂碼

㈢ 請教大俠,php存入mysql資料庫時漢字亂碼怎麼解決,文檔和資料庫都是utf8格式。

亂碼有幾個方面
首先確保資料庫的編碼是否正確
其次確保連接資料庫的代碼是否指定了正確的編碼。
另外就是html頁面的編碼是否一致,麻煩把問題補充清楚方便排查問題。

㈣ php顯示中文亂碼,phpmyadmin里的MySQL資料庫中文亂碼,如何解決

將瀏覽器中的編碼改成utf-8,資料庫中也是。在php頁面首行加上header("Content-type:
text/html;
charset=utf-8");,必須首行,前面不能有輸出。
還有,在查詢資料庫時加上:mysql_query(set
names
utf-8);

閱讀全文

與php插入資料庫亂碼相關的資料

熱點內容
高數第六版下冊答案pdf 瀏覽:903
sm3演算法實現java 瀏覽:673
只有程序員才懂的笑話 瀏覽:264
php開發app介面源碼 瀏覽:10
加密狗寶寶 瀏覽:235
單片機搶答器的原理 瀏覽:926
百利達體脂儀可以用什麼app連接 瀏覽:224
伺服器2016自動備份怎麼取消 瀏覽:844
dos攻擊命令大全 瀏覽:842
夢世界伺服器怎麼擴大領地 瀏覽:972
解壓breathe 瀏覽:437
webview調用java 瀏覽:352
android待機流程 瀏覽:860
python直接退出程序 瀏覽:852
百戰程序員收費標准 瀏覽:778
時鍾置換演算法指針變化規則 瀏覽:254
微信加密能否改密碼 瀏覽:113
android許可權組 瀏覽:179
2017單片機 瀏覽:485
讓孩子感興趣編程的電影 瀏覽:268