系统使用数据库MySQL,在创建数据库和表时都设置了UTF-8编码,PHP页面里也设置的是UTF-8编码,但是页面中取自数据库的中文字符都是乱码,如何解决该问题?
解决步骤:
第一步:查看数据库的编码设置,输入命令:show variables like ‘character%’;
下图中只有character_set_client ,character_set_connection,character_set_server的编码不是utf8,只要这三个设置的编码为utf8就不会导致乱码。接下去我们就修改这三处的设置。
第二步:找到并编辑MySQL的配置文件my.ini(Windows下)或my.cnf(Linux下)
#在[client]段增加下面代码
default-character-set=utf8
#在[mysqld]段增加下面的代码
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci
如图:
第三步:重启MySQL后,再次查看数据库的编码设置
第四步:重新创建数据库,输入命令:CREATE DATABASE yourDbName DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
并重新导入数据,这时页面显示就正常了。
- 本文固定链接: http://jingyan.idoubi.net/1647.html
- 转载请注明: 游戏创作者大陆 于 逗分享开发经验 发表