使用PHP向MYSQL数据库插入中文时,页面中文显示正常,但是用navicat查看数据里面就是乱码。。。 10
3个回答
展开全部
这种情我遇到过,以前也是这样的;后台数据库的编码为GB2312,但前台显示和后台显都采用了UTF8,所以你在后台看到数据是乱码,但通过你的程序显示是正常的。
解决方案,
1.把你的表内容,写只程序导出为TXT文字,
2.住还是UTF导出后保存在文本格式,
3.注意分隔符等,
4.接下来新建一个数据库为UTF8的编码,
5.用Navicat Premium软件导进数据进数据库,保持表名,字段结构等都不变。
6.接正就直接连接新的数据库显示就为正常的UTF8数据了,直接用软件打开也不会出现乱码,
虽然方法有点复杂,但这是解闪的根本方法!其实第二种:利用PHP的转码直接转码,这种方法危险性较高也不全面,请谨慎考虑!
解决方案,
1.把你的表内容,写只程序导出为TXT文字,
2.住还是UTF导出后保存在文本格式,
3.注意分隔符等,
4.接下来新建一个数据库为UTF8的编码,
5.用Navicat Premium软件导进数据进数据库,保持表名,字段结构等都不变。
6.接正就直接连接新的数据库显示就为正常的UTF8数据了,直接用软件打开也不会出现乱码,
虽然方法有点复杂,但这是解闪的根本方法!其实第二种:利用PHP的转码直接转码,这种方法危险性较高也不全面,请谨慎考虑!
推荐于2018-04-11 · 知道合伙人软件行家
关注
展开全部
我觉得还要明确一下,你说的“页面中文显示正常”,是指用php读取数据库再显示出来是正常的吗?还是说与用navicat查看一样都是乱码?
更多追问追答
追问
用php读取数据的页面时正常的(就是在php页面什么问题都没有),只要用navicat和phpmyadmin查看数据库里面的中文就是乱码。。。
追答
据我的理解,用php读取mysql数据时,可以通过代码来转换数据的编码格式。
我觉得你可以查看下数据库的结构定义,确定数据库、字段都是utf-8(即字符集:utf8,排序规则:utf8_general_ci,字段类型:varchar。。)。
不太清楚你乱码的数据是怎么输入进数据库,所以这个环节你可以测试一下,比如直接用phpmyadmin 编辑或新增一个记录的数据,看能不能正确显示,如果能就是在 数据输入 环节有问题。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
能确认navicat支持utf-8编码吗?
追问
首先谢谢你的回答。。。我用navicat创建数据库时候编码就是utf-8啊。。。并且用phpmyadmin查看也是同样乱码??你说的支持是怎么回事??
追答
phpmyadmin,应该是不支持数据库中的uft-8编码。
我一直没找到支持显示数据库中uft-8编码的管理程序。我看到的内容全是乱码,一直这样用着。如果谁帮你解决了这个问题,也告诉我一声,谢谢了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询