php中文乱码问题及解决方法
php中文乱码问题及解决方法
<html>
<head>
<title></title>
</head>
<body>
<?php
$mysql_server_name='localhost';
$mysql_username='root';
$mysql_password='000000';
$mysql_database='lib';
$conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password,$mysql_database);
$sql="selectname,agefrommytb";
print($conn);
$rs=mysql_db_query("lib","select*frommytb",$conn);
print("\n<br>");
while($row=mysql_fetch_object($rs)){
print($row->name.":".$row->age."<br>");
}
mysql_close($conn);
?>
显示如下:
Resourceid#1
dd:54
ddd:8
??:15
???:25
??:32
mysql编码:utf8,GBK都试过了。mysqlfont和命令行显示都正确。
问题补充:
乱码:
???:15
???:25
??:32
这几行,数据库里的值是汉字.显示出来的是问号.
解决办法:
在$rs=mysql_db_query("lib","select*frommytb",$conn);
前面加上
mysql_query("setnamesgb2312");或者mysql_query("setnamesgbk");