为什么本地测试正常 上传后就会出现插入数据库乱码解决思路

WBOY
發布: 2016-06-13 10:07:54
原創
991 人瀏覽過

为什么本地测试正常 上传后就会出现插入数据库乱码
php+sql 前后台都用的utf8 本地一切正常 上传后读取也正常 但是通过页面插入到数据库的中文全都是问号 怎么回事

每个页面都设置了

每次连接数据库后都设置了
$dbh->exec("SET CHARACTER SET utf8");
mysql数据库表和每个字段的编码都是utf8_generate_ci
本地一切正常 上传到服务器插入的汉字全是问号 
谁帮帮我啊 都快哭了

------解决方案--------------------
mssql? 嗯 方向对了 编码问题. 不过mysql 是 set names 'utf8',mssql 我就不清楚了。应该是这句语句不正常吧
------解决方案--------------------

探讨

引用:
mssql? 嗯 方向对了 编码问题. 不过mysql 是 set names 'utf8',mssql 我就不清楚了。应该是这句语句不正常吧
是mysql exec("SET CHARACTER SET utf8");这种方法是正确的 我设了set names 'utf8'也还是没用 我真快哭了

------解决方案--------------------
看看从本地数据库导出的编码格式是不是都是UTF-8,如果是的话看导出后的中文内容是不是问号,然后导入到服务器那边的数据库的编码是不是都是UTF-8.应该是格式不一致的原因,再有楼上说的应该是mysql吧,语句应该是mysql_query("SET NAMES 'utf-8'");
------解决方案--------------------
PHP页面加上试试:
header('Content-Type:text/html;charset=utf-8');
------解决方案--------------------
还是牛哥慧眼,我前面写错了,是utf8!你在phpadmin的首页看看 MySQL 连接校对是不是utf8_generate_ci
还有就是Language是不是中文-Chinese simplified,如果都没问题的话就点导出,然后再看文件的字符集是不是utf8,如果是的话,你就点下面的执行,这样数据就可以导出来了,然后导入的话也是要看清楚这3项是否跟你导出的时候一致,这样就应该可以了
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!