关于mysql和php的数据传输问题

同样的sql语句,在数据库cmd下插入的时候使用select查询时就是中文, 在php中使用insert语句插入数据库,在进入到数据库中在查询就是变成乱码了?为什么?怎么办

只要php和mysql中使用同一种编码 应该不会出现乱码 如果还有乱码则是数据库问题 建议修改如下

① 首先把MySQL的服务停掉 在运行窗口输入:net stop mysql
② 把服务器和客户端的字符集改成自己想用的字符集:GB2312或是utf8等……
具体操作为:打开mysql安装目录下的my.ini;
找到default-character-set,将其改为自己想用的字符集:GB2312或是utf8等……,要注意的是这里有两个default-character-set,用ctrl+f定位在文件最前面输入default就会找到,都要改过来;
③ 重启MySQL服务器,在运行窗口输入:net start mysql
④ 最重要的是一点是,到这里我们已经能够解决乱码问题了,可问题是我们依然还会出现乱码问题,这是因为我们现在的表被创建的时候用的是默认的字符集(latin1),所以这时候我们要把表删除,然后重建就可以了追问

这是为什么,改了后数据库都无法插入了

追答

你建的表用的是什么字符集?show create table tbname

追问

按照你说的按了重建表啊,应该是utf8

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-10-14
看看你的服务器语言设置....是不是设置的不一样?
show variables 'character%';追问

这是为什么

追答

show variables like 'character%';

追问

哪有问题

追答

show global variables like 'character%';

看下全局变量....

追问

看不出什么问题吧

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网