php向資料庫插入資料出現亂碼問題

2021-07-02 12:13:35 字數 720 閱讀 6063

一般插入到資料庫的資料亂碼都是編碼的問題,可以在插入資料庫前檢視下內容的編碼方式,如果和資料庫用的編碼方式(如:utf-8)一樣就執行插入操作,不一樣就進行轉碼。

先判斷你要插入資料庫的文字的編碼方式,是utf-8就插入,不是的話要轉為utf-8之後再插入:

先判斷你要插入資料庫的文字的編碼方式,是utf-8就插入,不是的話要轉為utf-8之後再插入:

$e=mb_detect_encoding($text, array('utf-8', 'gbk', 'gb2312'));

switch($e)

本以為程式中的編碼和資料庫用的編碼保持一致就不會出現亂碼了,可是,插入資料庫的資料還是有亂碼出現,排除了編碼不一致之後,就想到可能是使用php連線mysql時沒有設定mysql編碼的緣故,果然,在連線資料庫之後將資料庫的編碼也設為utf8之後再進行資料庫插入操作就沒有亂碼了。

**如下:

$this->conn = mysqli_connect($db['default']['hostname'], $db['default']['username'], $db['default']['password'], $db['default']['dbname']) or die('connect error!'); //連線到資料庫

mysqli_set_charset($this->conn, 'utf8'); //此處不能用utf-8

向資料庫插入中文時出現亂碼

在做web開發時 本人用jsp做開發,資料庫用的mysql,其他開發方式可能稍有不同,但原理是一樣的 向資料庫中插入中文時出現亂碼現象。這個現象跟很多環節有關係,但最根本的是要選擇一種支援中文的編碼,且各個地方的編碼都要保持一致。這些地方主要包括資料庫的編碼,jsp頁面 請求的編碼,資料庫連線時的編...

php將中文插入資料庫出現亂碼

通過php向mysql資料庫插入資料,然後在資料庫中檢視的時候全是亂碼 中文 但是取出之後放在頁面上仍然正常.就是通過資料庫檢視的時候全是亂碼不能閱讀.mysql以utf 8編碼來儲存中文,頁面提交預設是utf 8的編碼方式 資料庫連線的時候,設定編碼為utf 8就可以了 connect mysql...

PHP向mysql資料庫插入中文顯示亂碼

檢視資料庫編碼方式 查詢 show variables like character 設定 set character set server utf8 設定html頁面編碼 php檔案編碼設定 訊息頭部 header content type text html charset utf 8 資料庫連...