当前位置: 首页 > 图文教程 > 网络编程 > PHP > php中文乱码问题及解决方法

PHP
PHP入门速成(1)
使用PHP的错误处理
用PHP实现文件上传
PHP入门速成(2)
PHP模板引擎SMARTY
PHP5/ZendEngine2的改进
PHP5中MVC结构学习
PHP数据库操作面向对象的优点
PHP中调用JAVA
JAVA/JSP学习系列之三
PHP的宝库目录--PEAR
JAVA/JSP学习系列之六
PHP开发大型项目的一点经验
JAVA/JSP学习系列之七
新版PHP将向Java靠拢
不用iconv库的gb2312与utf-8的互换函数
JAVA/JSP学习系列之二
JAVA/JSP学习系列之四
把从SQL中取出的数据转化成XMl格式
在PHP中利用XML技术构造远程服务(下)

PHP 中的 php中文乱码问题及解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 285 ::
收藏到网摘: n/a

<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="select name,age from mytb";
print($conn);
$rs=mysql_db_query("lib","select * from mytb",$conn);
print("\n<br>");
while($row = mysql_fetch_object($rs)){
print ($row->name.":".$row->age."<br>");
}
mysql_close($conn);
?>

  显示如下:
 
Resource id #1
dd:54
ddd:8
??:15
???:25
??:32

  mysql编码:utf8,GBK都试过了。mysql font 和命令行显示都正确。

  问题补充:

  乱码:

???:15
???:25
??:32

  这几行,数据库里的值是汉字.显示出来的是问号.

  解决办法:

  在$rs=mysql_db_query("lib","select * from mytb",$conn);

  前面加上

  mysql_query("set names gb2312");或者mysql_query("set names gbk");