PHP的数据库显示中文乱码有几种情况?

数据库GBK 操作方式GBK 保存文件GBK浏览器GBK 则为正常!
数据库UTF8操作方式GBK 保存文件GBK浏览器GBK 则为正常!
数据库UTF8操作方式UTF8 保存文件UTF8浏览器UTF8则为正常!
这三种情况,我测试过,都正常,其它情况乱码,或不可识别!
在执行mysql_query($sql)前,请指定操作数据库使用何种编码。楼上所说的:mysql_query(“set names gbk”);
补充:
PHP的默认配置文件里是以UTF8形式操作数据库的,所以在你没有指明编码的时候,对数据库操作,保存的形式就相当于你把UTF8格式的内容存放到GBK的数据库内,所以这样是无法识别的!
$db-> select_db(“test”);
mysql->query(“set names gb2312”)
$sql = “SELECT * FROM t_user WHERE f_username='$username'“;
$rs = $db->query($sql);
追问:
哦哦~~但是还是有问题啊..
Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\AppServ\www\myphp\myphp.php on line 78

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\AppServ\www\myphp\myphp.php on line 78
添加记录成功!asdf
在此输入图片描述
还是乱码~~
回答:
Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\AppServ\www\myphp\myphp.php on line 78
密码错误呀!
补充:
加QQ远程看看吧!
追问:
恩,好的,不过我也不懂怎样做的哦..292871207..
回答:
明白了,你的mysql用的是一个类吧!你先看看在你类时里面有没有设置mysql_query(“set names xxx”)
如果没有,那你法应该$db->query(“set names xxx”)

你可能感兴趣的:(PHP的数据库显示中文乱码有几种情况?)