php将中文字符串插入mysql数据库不能显示中文怎么办?

$connection=mysql_connect("127.0.0.1","root","111") or die("不能连接数据库".mysql_error());
mysql_query("SET NAMES 'GBK'");
这是网上教的方法,可是我试过没用。。。

中文编码涉及到三个问题:
一个是页面的输出就是header('Content-type: text/html;charset=utf-8');
还有就是文件本身的编码,用专业的编辑器工具比如editplus编辑,保存时另存为,选择编码格式的下拉列表找到UTF-8。

最好就是保存到数据库时,注意数据库的编码格式是否和你的页面一致。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-07-26
在每次执行sql语句之前都写上这句mysql_query("SET NAMES 'GBK'");
那个GBK当然要与你的编码一致了

这样就可以了追问

都说已经试过了

追答

从数据库里取出来的压根就是乱码么?

我的意思是每次执行都写上,不是只在连接数据库的时候写一次

本回答被提问者采纳
第2个回答  2011-03-18
看你自己的那个数据库是utf-8还是gbk,如果gbk出了错,可以改成mysql_query("SET NAMES 'utf-8'")就可以了,不需要每次执行都写