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

PHP
编写自己的php扩展函数
用Socket发送电子邮件
Get或Post提交值的非法数据处理
一个可查询所有表的“通用”查询分页类
拼音码表的生成
一个odbc连mssql分页的类
用PHP动态创建Flash动画
如何使用PHP获取网络上文件
PHP中路径问题的解决方案
论坛头像随机变换代码
十天学会php(2)
十天学会php(1)
十天学会php(3)
PHP自动生成月历代码
关于PHP中的Class的几点个人看法
Win9x/ME下Apache+PHP安装配置
基于PHP+MySQL的聊天室设计
PHPlet在Windows下的安装
Search Engine Friendly的URL设计
如何给phpadmin一个保护

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 316 ::
收藏到网摘: 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");