解决MYSQL后台utf8编码,前台页面显示错误的问题

王朝mysql·作者佚名  2008-05-21
窄屏简体版  字體: |||超大  

在前台页面里面,从数据库中选择出来的数据表中文项目,有的是正确的编码显示,有的是错误的乱码,分析后知道,原因可能有3种:

1. mysql_server 的语言环境应该为zh_CN.GBK ,同时数据库的环境变量中要把各个数据库中的字符集设定为utf8;

2. 页面前台输出需要转码

3. 运行客户端的时候,没有设定utf8编码就把数据库表建立,使得数据库表中本身插入的就是乱码

我遇到的起初认为是1;最后发现是3

错误的原因:

正确的解决方法:

解决utf8字符集的问题

mysql -h127.0.0.1 -P3336 -uroot < initTables.sql

mysql -h127.0.0.1 -P3336 -uroot < initMacro.sql

mysql -h127.0.0.1 -P3336 -uroot < initUsers.sql

mysql -h127.0.0.1 -P3336 -uroot < initRoles.sql

mysql -h127.0.0.1 -P3336 -uroot

这样插入的表,本身就是乱码,显示到前台,当然也是乱码了

解决utf8字符集的问题

[aimm@aixuning MySQL]$ mysql --default-character-set=utf8 -h127.0.0.1 -P3336 -uroot < initTables.sql

[aimm@aixuning MySQL]$ mysql --default-character-set=utf8 -h127.0.0.1 -P3336 -uroot < initMacro.sql

[aimm@aixuning MySQL]$ mysql --default-character-set=utf8 -h127.0.0.1 -P3336 -uroot < initUsers.sql

[aimm@aixuning MySQL]$ mysql --default-character-set=utf8 -h127.0.0.1 -P3336 -uroot < initRoles.sql

[aimm@aixuning MySQL]$ mysql --default-character-set=utf8 -h127.0.0.1 -P3336 -uroot

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航