关于mysql数据库存储中文乱码的问题
博客专区 > lilugirl 的博客 > 博客详情
关于mysql数据库存储中文乱码的问题
lilugirl 发表于5年前
关于mysql数据库存储中文乱码的问题
  • 发表于 5年前
  • 阅读 146
  • 收藏 0
  • 点赞 0
  • 评论 0

前提 : 1数据库和表都是utf8_general_ci格式 2程序代码也是utf-8格式,且使用了mysql_query("set names utf-8"); 及 htmlentities ENT_QUOTES,'utf-8'

结果: 即使是这样 插入数据库汉字仍然在数据库中看到的是乱码,但是页面上显示的好的。

原因及解决方法: 原因可能是mysql在安装的时候的设置不对。 解决方法,你无法改变供应商重新安装mysql的话,只能接受这样的事实。就让它乱码吧, 需要导出数据的话可以自己手写代码用csv或者xls导出。

实际上后来发现以下解决方案,

phpmyadmin里MySQL字符集:cp1252 West European (latin1) ,解决乱码问题 使用虚拟主机空间上的phpmyadmin操作数据库的时候,如果看到phpmyadmin首页上显示的MySQL 字符集为cp1252 West European (latin1),当我们导入数据时就会出现乱码,解决的方法是:

在phpmyadmin首页的右边有个Language选项,把默认的中文 - Chinese simplified-gb2312改成 中文 - Chinese simplified,则左边的MySQL 字符集会变成UTF-8 Unicode (utf8) ,乱码问题得到解决!

如果数据库编码没有问题,则 确保所有页面都是 utf-8 无BOM 另外在调用页面 mysql_query 前也 写入 mysql_query("set names utf8") 就可以保证无乱码

标签: mysql 乱码
共有 人打赏支持
粉丝 85
博文 291
码字总数 91189
×
lilugirl
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: