使用PHP向MYSQL数据库插入中文时,页面中文显示正常,但是用navicat查看数据里面就是乱码。。。 10

数据库编码,php都用的是utf-8.。。。这种情况是怎么回事???... 数据库编码,php都用的是utf-8.。。。这种情况是怎么回事??? 展开
 我来答
pyllion
2012-11-10 · TA获得超过817个赞
知道小有建树答主
回答量:661
采纳率:100%
帮助的人:658万
展开全部
这种情我遇到过,以前也是这样的;后台数据库的编码为GB2312,但前台显示和后台显都采用了UTF8,所以你在后台看到数据是乱码,但通过你的程序显示是正常的。
解决方案,
1.把你的表内容,写只程序导出为TXT文字,
2.住还是UTF导出后保存在文本格式,
3.注意分隔符等,
4.接下来新建一个数据库为UTF8的编码,
5.用Navicat Premium软件导进数据进数据库,保持表名,字段结构等都不变。
6.接正就直接连接新的数据库显示就为正常的UTF8数据了,直接用软件打开也不会出现乱码,

虽然方法有点复杂,但这是解闪的根本方法!其实第二种:利用PHP的转码直接转码,这种方法危险性较高也不全面,请谨慎考虑!
windblast
推荐于2018-04-11 · 知道合伙人软件行家
windblast
知道合伙人软件行家
采纳数:5633 获赞数:13622
毕业于空军第一航空学院电子专业,1991年开始接触电脑,从事多年计算机编程,具有较丰富的经验。

向TA提问 私信TA
展开全部
我觉得还要明确一下,你说的“页面中文显示正常”,是指用php读取数据库再显示出来是正常的吗?还是说与用navicat查看一样都是乱码?
更多追问追答
追问
用php读取数据的页面时正常的(就是在php页面什么问题都没有),只要用navicat和phpmyadmin查看数据库里面的中文就是乱码。。。
追答
据我的理解,用php读取mysql数据时,可以通过代码来转换数据的编码格式。

我觉得你可以查看下数据库的结构定义,确定数据库、字段都是utf-8(即字符集:utf8,排序规则:utf8_general_ci,字段类型:varchar。。)。

不太清楚你乱码的数据是怎么输入进数据库,所以这个环节你可以测试一下,比如直接用phpmyadmin 编辑或新增一个记录的数据,看能不能正确显示,如果能就是在 数据输入 环节有问题。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cninca
2012-11-10 · TA获得超过366个赞
知道小有建树答主
回答量:337
采纳率:0%
帮助的人:171万
展开全部
能确认navicat支持utf-8编码吗?
追问
首先谢谢你的回答。。。我用navicat创建数据库时候编码就是utf-8啊。。。并且用phpmyadmin查看也是同样乱码??你说的支持是怎么回事??
追答
phpmyadmin,应该是不支持数据库中的uft-8编码。

我一直没找到支持显示数据库中uft-8编码的管理程序。我看到的内容全是乱码,一直这样用着。如果谁帮你解决了这个问题,也告诉我一声,谢谢了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式