为什么php设定php mysql_query(set names utf-8)后,中文还是乱码 如题 但是如果是gb2312就可以正常显示中文 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你在建立数据库的时候是否更改了原先的校对没有?如果有的话,你的mysql_query()的内容要和你的校对的一致。==================建议一般不要更改MySQL的校对和整理!都用utf-8,在网页文件中的charset也用utf-8,否则中文数据插入了也会变成乱码! mysql我用的是utf-8,php页面我也用utf-8,但还是出错,用了gb2312后就没问题。 应该是要保持编码一致的网页中<meta http-equiv="content-type" content="html/text; charset=utf-8" />header@header("content-Type: text/html; charset=utf-8"); mysql_query(set names utf8) 用mysql4.0.27以前的版本.没有数据校对的话,就不会出现UTF-8的乱码问题,这是最直接的解决方法,其他方法的话.很麻烦,如果你网页文件本身是UTF-8格式的.那么,够你折腾的了.详情可参考http://topic.csdn.net/u/20090104/22/69c003fc-7e74-459a-a9f0-f22e43427e09.html这个. mysql_query("set names utf8");而不是utf-8。楼主的意思是不是指定为GB2312就没事呢??如果是那么你的数据库不是UTF8而是GB2312的。网页用header强制指定编码,文件自己的 编码也要是utf-8的。 今天也是一样,发现确实是写错了。是utf8 而不是utf-8! 如果用gb2312是中文,那么用utf8就应该是乱码,mysql语句对了也是因为编码方式不一样 不知道怎么的windows下应该是 set names utf8,到linux下就需要写成set names utf-8 mysql_query(set names utf8)-------------我亲身体会了 php 递归函数 求解 如何让客户端浏览器自动刷新一下? 有关php.net, 问个ADODB的小问题 大家常去的模板网站有哪些?拿出来共享 如何用PHP做文件上传,和在网页上点击打开Word或Excel文件? 请教一个正则表达式的写法? 大家好呀,我是刚开始学php,大家可以介绍以下php如何入门吗? thinkphp 连接为什么自动跳转 哪位大神来讲解一下wordpress自定义url的原理 phpMyAdmin - 错误“缺少 mysqli 扩展”(高手进) 正则匹配,求帮忙
如果有的话,你的mysql_query()的内容要和你的校对的一致。==================
建议一般不要更改MySQL的校对和整理!
都用utf-8,在网页文件中的charset也用utf-8,否则中文数据插入了也会变成乱码!
网页中
<meta http-equiv="content-type" content="html/text; charset=utf-8" />
header
@header("content-Type: text/html; charset=utf-8");
mysql_query("set names utf8");而不是utf-8。楼主的意思是不是指定为GB2312就没事呢??如果是那么你的数据库不是UTF8而是GB2312的。网页用header强制指定编码,文件自己的 编码也要是utf-8的。
今天也是一样,发现确实是写错了。是utf8 而不是utf-8!
-------------
我亲身体会了