我数据库操作用的是PDO,apache中的默认字符是UTF8,MYSQL也是UTF8,但是在读取MYSQL中的中文数据显示的是乱码;当从PHP写入MYSQL也是乱码,但是如果从PHP中再读取这些数据,又会正常,不知道问题出在哪里。
网上说设置 mysql_query("SET NAMES 'uft-8')我也试了,但还是不行,如下(一个单独的文件“pdo.conn.php”):
<?php
$user = "root";
$pass = "root";
try {
$dbh = new PDO('mysql:host=localhost;dbname=corporate',$user,$pass,array(PDO::ATTR_PERSISTENT=>true));
mysql_query("set names 'utf-8'");
} catch (PDOException $e) {
printf("Failed to obtain database handle %s",$e->getMessage());
}
?>
请问各位是如何解决的,谢谢!
网上说设置 mysql_query("SET NAMES 'uft-8')我也试了,但还是不行,如下(一个单独的文件“pdo.conn.php”):
<?php
$user = "root";
$pass = "root";
try {
$dbh = new PDO('mysql:host=localhost;dbname=corporate',$user,$pass,array(PDO::ATTR_PERSISTENT=>true));
mysql_query("set names 'utf-8'");
} catch (PDOException $e) {
printf("Failed to obtain database handle %s",$e->getMessage());
}
?>
请问各位是如何解决的,谢谢!
源文件另存一下,设置为UTF8编码无BOM格式,head中加入:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
ini_set('default_charset', 'utf-8');
......
?>