mysql数据库正常,php查出来中文变乱码了

mysql数据库中中文能正常显示,但php查询出来的时候,中文变成了乱码 就“???????”
这个该怎么弄

是不是如果我页面编码是gb2312的话,数据库如果也是gb2312就可以了

还有我mysql数据库没有gbk 跟 gb2312 的编码,这怎么整····

典型的编码问题。
在php中mysql_connect之后,加一句:mysql_query('set names utf8', $con);用来设置一下编码。

php文件的编码(一般是UTF8无BOM)也应该与数据库的编码一致。

显示是通过html完成的,因此应该在<header>中的<title>前,指定html的编码为utf8.

总之,养成良好的编码习惯,数据库建立的时候就用utf8,数据表也用utf8,取数时set names utf8, 取出来之后显示时也用utf8。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-08-31
安装数据库的地方找到my.ini并设置default-character-set=GBK
如果你是linux 系统 locate my.ini
然后设置成UTF8

总之,php和mysql都要保持一致的编码。
第2个回答  2010-08-31
你先看看你的PHP程序的编码是否和数据库一致呀....不要将UTF-8和GBK混用