PHP编程 网页上获取不了中文 都是???,但是phpadmin里数据库显示中文
<?php
$conn = mysql_connect("localhost","root","1234") or die("不能连接数据库服务器:".mysql_connect_errror());
mysql_select_db("messtest",$conn);
$results = mysql_query("select * from gbbook");
mysql_query($results,$conn);
mysql_query("setnames 'utf8'",$conn);//使用中文编码;
while($row = mysql_fetch_row($results)){
echo $row[0]."".$row[1]."".$row[2]."".$row[3]."".$row[4];
echo"<br />";
}
mysql_close($conn);
?>
------解决方案--------------------mysql_query("set names 'utf8'",$conn);//使用中文编码;
------解决方案--------------------将浏览器和php文件都统一为gbk编码,首行加上:
header("content-type:text/html;charset=gbk")
------解决方案--------------------你看看你的mysql安装时的编码格式是什么在(MySQL的安装目录下)my.ini里面找到"default-character-set"(有两处)看假如是latin改为gbk 或者 utf-8,中文支持的编码格式可以是gbk utf-8
//假如是纯php不包括html代码就加上下面这段代码
header("content-type:text/html;charset=gb2312")或者header("content-type:text/html;charset=gbk")
//如果既有php还包括html代码就只加上下面这段代码
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
------解决方案--------------------最好确认下你的数据库编码和页面显示编码。编码要一致。
------解决方案--------------------你好 我知道你哪里出错了。我此时正碰的你的问题但是我解决了。
你有这么一段:mysql_query("setnames 'utf8'",$conn);//使用中文编码;不仅写错了,而且你只设置了 setnames数据表为 utf8 编码,而不是整个数据库。你应该删除然后加上mysql_query("SET NAMES utf8");在mysql_query($results,$conn);的下面。
我是新手你也是。
我把网页设置为 utf8 但是我的数据库字段设置的是gbk。同样没有出错,能够读取汉子。
------解决方案--------------------页面编码也要改
最前面加上
header("content-type:text/html;charset=utf-8");
数据库加上
mysql_query("set names 'utf8'");