Heim  >  Artikel  >  Backend-Entwicklung  >  php中文乱码问题和MySql出现中文乱码的解决方法_PHP教程

php中文乱码问题和MySql出现中文乱码的解决方法_PHP教程

WBOY
WBOYOriginal
2016-07-13 17:05:18846Durchsuche

php教程中文乱码问题和mysql教程出现中文乱码的解决方法






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

");
while($row = mysql_fetch_object($rs)){
print ($row->name.":".$row->age."
");
}
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");


下面看一下关于解决乱码的方法


.gb2312,gbk,utf8等支持多字节编码的字符集都可以储存汉字,gb2312中的汉字数量远少于gbk,而gb2312,gbk等都可在utf8下编码。

  二.用命令show variables like 'character_set_%';查看当前字符集设定:

mysql> show variables like 'character_set_%';
+--------------------------+--------+
| variable_name      | value |
+--------------------------+--------+
| character_set_client   | gb2312 |
| character_set_connection | gb2312 |
| character_set_database  | gb2312 |
| character_set_filesystem | binary |
| character_set_results  | gb2312 |
| character_set_server   | latin1 |
| character_set_system   | utf8  |
+--------------------------+--------+
7 rows in set (0.02 sec)

  

(这里设置的字符是gb2312)

  显示中文乱码主要有两个设置:character_set_connection 和character_set_results ,

  如果你的这两个设置不支持中文编码,就会出现乱码,只要:set character_set_results =gbk;就设置中文编码了。

  三.set names charset_name;可以一次性设置客户端的所有字符集。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/630781.htmlTechArticlephp教程中文乱码问题和mysql教程出现中文乱码的解决方法 html head title/title /head body ?php $mysql_server_name='localhost'; $mysql_username='root'; $mysql_pass...
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn