站長資訊網
最全最豐富的資訊網站

php向數據庫插入數據出現亂碼問題

php向數據庫插入數據出現亂碼的解決辦法:首先將數據庫的編碼設為utf8;然后判斷要插入數據庫的文本編碼方式;最后通過switch語句實現數據判斷插入即可。

php向數據庫插入數據出現亂碼問題

推薦:《PHP視頻教程》

php向數據庫插入數據出現亂碼問題

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

先判斷你要插入數據庫的文本的編碼方式,是utf-8就插入,不是的話要轉為utf-8之后再插入:

        $e=mb_detect_encoding($text, array('UTF-8', 'GBK', 'gb2312'));         switch($e){             case 'UTF-8' : //如果是utf8編碼就直接插入數據庫                 break;             case 'GBK': //如果是gbk編碼就轉換為utf-8之后再插入數據庫             iconv("GBK", "UTF-8",$data) ;             break;             case 'GB2312': //如果是GB2312編碼就轉換為utf-8之后再插入數據庫             iconv("GB2312", "UTF-8",$data) ;         break;         }

本以為程序中的編碼和數據庫用的編碼保持一致就不會出現亂碼了,可是,插入數據庫的數據還是有亂碼出現,排除了編碼不一致之后,就想到可能是使用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

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
精品无码av一区二区三区 | 日韩成人精品日本亚洲 | 亚洲av无码国产精品色在线看不卡 | 国产成人综合一区精品| 久久国产精品成人影院| 久久精品日日躁精品| 国产午夜精品免费一区二区三区| 久久99亚洲综合精品首页| 一区二区精品视频| 人妻无码精品久久亚瑟影视| 日韩精品一区二区三区四区| 日韩A无码AV一区二区三区| 国内精品久久久久久影院| 国产精品99久久不卡| 狠狠精品干练久久久无码中文字幕| 日韩中文字幕精品免费一区| 亚洲午夜精品在线| 精品欧洲AV无码一区二区男男| 米奇777四色精品人人爽| 久久精品亚洲精品国产色婷| 日产精品99久久久久久| 无码精品视频一区二区三区| 久久国内精品自在自线软件| 久久精品视频久久| 亚洲高清国产AV拍精品青青草原| 国产亚洲精品va在线| 国产亚洲精品无码成人| 国产福利精品一区二区| 久久久久无码精品亚洲日韩| 无码精品人妻一区二区三区免费看 | 日韩一区二区免费视频| 国产日韩在线观看视频网站| 老司机午夜精品视频播放| 九九精品国产99精品| 500av导航大全精品| 久久精品国产亚洲精品| 中文字幕日韩精品无码内射| 青青青国产依人精品视频| 国产成人综合久久精品红| 亚洲精品免费网站| 亚洲精品久久无码av片俺去也|