最近学习用PHP做网站,在用mysql_query()将中文数据插入到mysq数据库的时候,出现一个问题:
可以将数据插入到数据库里,但是用DOS界面或者数据库图形编辑工具Navicat查看数据表里的内容的时候,却发现中文数据都是乱码,重新读取出来在网页上显示却又正常~~~
初步怀疑是字符集的问题,于是在网上搜索解决方法,终于把乱码的问题解决,非常简单,总结如下:
1. 保证所有页面和数据库都采用统一的编码方式,大家都建议用utf-8;
2. 用mysql_connect()和mysql_select_db()连接和选择好数据库后(当然也可以用别的函数),在对数据库进行更新、插入等操作之前,添加一句
mysql_query("set names utf8");这是为了设置数据库查询的字符集。这里的utf8也就是第1点所说的统一的编码方式(注:不能写成utf-8)。