php无法识别数据库中文,PHP编程网页上获取不了中文都是?,但是phpadmin里数据库显示中文...

$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"

";

}

mysql_close($conn);

?>

回复讨论(解决方案)

mysql_query("set names 'utf8'",$conn);//使用中文编码;

试过了,没用。

mysql_query("setnames 'utf8'",$conn);//使用中文编码;

mysql_query("setnames 'utf8'",$conn);

mysql_query("set names 'gb2312'",$conn);

mysql_query("set names 'gbk'",$conn);

全都试过,都没用啊!我phpadmin里面用的是gb2312;

将浏览器和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代码就只加上下面这段代码

phpmyadmin是会自己调整的,你得确认你的程序是什么编码,你的数据库是什么编码。要统一。

最好确认下你的数据库编码和页面显示编码。编码要一致。

都按上述的改过之后,还是不行,还有其他办法没有,是什么问题???

1.my.ini里面已经将latin改成gbk;

2.数据库我原先用的是gb2312,现在也改成gbk了

3.这段代码页加了

没有用啊,求大神再指教

一般来说。。

1.页面的字符编码

2.数据库的字符编码

3.读取数据库代码设置的字符编码

这三者一致就不会出现问题

你好 我知道你哪里出错了。我此时正碰的你的问题但是我解决了。

你有这么一段: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'");

mysql_query("setnames 'utf8'",$conn);//使用中文编码;

这句话应该放在连接数据库后面

$conn = mysql_connect("localhost","root","1234") or die("不能连接数据库服务器:".mysql_connect_errror());

mysql_select_db("messtest",$conn);

mysql_query("setnames 'utf8'",$conn);//使用中文编码;

...

... 本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:php中文网

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值