十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
展开快讯
10年积累的成都网站设计、做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先制作网站后付款的网站建设流程,更有珲春免费网站建设让你可以放心的选择与我们合作。
登录
首页
专栏
问答
沙龙
快讯
团队主页
开发者手册
智能钛AI
在线学习中心
TVP
返回腾讯云官网
彻底解决MySQL中文乱码
mysql是我们项目中非常常用的数据型数据库。但是因为我们需要在数据库保存中文字符,所以经常遇到数据库乱码情况。下面就来介绍一下如何彻底解决数据库中文乱码情况。
1、中文乱码
1.1、中文乱码
无法插入中文字符:
1.2、查看表字符编码
我们可以看到表的默认字符集是latin1.
所以我们在创建表的时候就需要指定表的字符集:
这样在Linux里面可以访问并且可以插入与访问这个表了。
1.3、数据库与操作系统编码
虽然在服务器端可以显示中文正常,但是在客户端可能会显示乱码。因为我们的服务器是UTF8。
而且数据库的编码也存在问题。
这里我们可以看character_sert_database与character_set_server的字符集都是latin1.那么在mysql数据库中,server,database,table的字符集都默认是latin1.下面我们就来看看如何解决mysql乱码情况。
2、mysql设置变量的范围
2.1、session范围
查看数据库编码:
修改字符编码:
我们可以看到字符集已经修改成都是utf8了。但是这里有一个问题,那就是我们重新打开一个命令窗口然后查看数据编码就会出现下面的画面:
php数据库中文乱码的解决办法:1、创建数据库时,规定字符类型为uft8;2、创建表时,规定字符类型为utf8;3、在PHP的MySQL连接函数中,添加语句“mysql_query("set names 'utf8'")。
乱码主要以下几个原因:
1。数据表中,表本身的编码 和 字段编码,均为UTF8。
2。在写入数据等数据库操作前,发送语句 'set names utf8'
3。PHP文件都是UTF8编码,无签名(无BOM)
4。页面上使用header或meta保证输出的页面是UTF8编码。meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
鲜少老师
解决乱码有几种方式:
在读取数据库的时候设置连接编码:mysql_query("set
names
utf8");
在读取数据库的php文件的头部加:header("Content-type:text/html;charset=utf-8");
php文件不是utf8格式的编码,需要转化。用notpad++文本编辑器打开php文件,点击菜单中的“格式”,查看是否是“以utf8
无bom格式编码”,不是的话请转成此格式。
html格式的在头部加上:meta
http-equiv="Content-Type"
content="text/html;
charset=utf-8"
/
你看看你的是哪一种情况,都对比做的一下,还不行在问我。