日期:2014-05-16  浏览次数:20768 次

mysql编码问题, 无法显示中文......
mysql>show variables like 'char%';
+--------------------------+--------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | c:\program files\MySQL5.5\share
\charsets\ |
+--------------------------+--------------------------------+
8 rows in set (0.00 s

mysql 版本号是5.5.27 community server;

从mysql的安装开始,所有的character set 均设置为UTF8。英文和数字的表示一切正常。但是在网页中的中文就显示为连续的“??????”。在mysql 的命令行窗口,插入中文数据时,显示“ invalid utf8 character string”。
从PHPMYADMIN 中可以插入和查询,都没有问题。

考虑了很长时间,反复看了文档,也没能找见是什么地方的原因。

盼望大侠赐教!

------解决方案--------------------
我也遇到过一样的问题,在命令行显示的时候就输入 set names gbk;因为windows命令行里就识别gbk 不识别utf8 在网页显示中乱码可以这样解决:在数据库链接文件(也就是你的php文件中的第一行类似<?php require_once('Connections/sql.php'); ?>所指向的那个文件,这个例子就是sql.php),把这个文件打开 在最后?>之前加一句:mysql_query("set names utf8;"); 意思貌似还是重复设置了utf8 但我试了几次就是这儿决定的,你也尝试尝试吧