代码如下:
PHP
$link=@R_301_198@_connect("localhost","root","之前的管理员密码");
if(!$link) echo "没有连接成功!";
@R_301_198@_select_db("infosystem",$link); //选择数据库
$q = "SELECT * FROM info"; //SQL查询语句
@R_301_198@_query("SET NAMES GB2312");
$rs = @R_301_198@_query($q); //获取数据集
if(!$rs){die("Valid result!");}
echo " echo "
@R_301_198@_free_result($rs); //关闭数据集
?>
$link=@R_301_198@_connect("localhost","root","之前的管理员密码");
if(!$link) echo "没有连接成功!";
@R_301_198@_select_db("infosystem",$link); //选择数据库
$q = "SELECT * FROM info"; //SQL查询语句
@R_301_198@_query("SET NAMES GB2312");
$rs = @R_301_198@_query($q); //获取数据集
if(!$rs){die("Valid result!");}
echo "
?>
中文显示乱码问题
当我们按照原来的方式通过PHP存取@R_301_198@数据库时,就算设置了表的默认字符集为utf8并且通过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。其实简单的方法是通过PHPMyAdmin来设置。
设置下面几项:
1: 语言设置为 chinese (zh-utf-8)
2: @R_301_198@ 字符集: UTF-8 Unicode (utf8)
3: @R_301_198@ 连接校对: utf8_general_ci
4: 新增数据库和数据表的时候,整理项选择 utf8_general_ci
通过以上设置,在PHPMyAdmin中操作和查询的时候,中文字符都不会乱码了。
但是你会发现,在PHP程序中用以前的sql语句查询出来的结果还是乱码,问题就出在connection连接层上。
解决方法是在成功连接数据库之后,发送一句查询语句:
代码如下:
1: $this->LinkID = @R_301_198@_connect($this->Host,$this->User,$this->Password);
2: @R_301_198@_query('SET NAMES 'utf8'',$this->LinkID);
或:
DEFINE ('LINK',@R_301_198@_connect (DB_HOST,DB_USER,DB_PASSWORD));
@R_301_198@_query("SET NAMES 'utf8'",LINK);
2: @R_301_198@_query('SET NAMES 'utf8'',$this->LinkID);
或:
DEFINE ('LINK',@R_301_198@_connect (DB_HOST,DB_USER,DB_PASSWORD));
@R_301_198@_query("SET NAMES 'utf8'",LINK);
gbk编码的
代码如下:
原文链接:https://www.f2er.com/php/25265.html