标题: 三招根治新手的PHP+mysql乱码问题!
lizyy
新手上路
Rank: 1



UID 1753
精华 0
积分 0
帖子 6
翻译 0
原创 0
阅读权限 10
注册 2008-8-3
状态 离线
发表于 2008-8-4 16:28  资料  短消息  加为好友 
三招根治新手的PHP+mysql乱码问题!

先讲下两个字符集的区别:
gb2312是标准中文字符集。
UTF-8 是 UNICODE 的一种变长字符编码,即 RFC 3629,可以解决多种语言文本显示问题,从而实现应用国际化和本地化。 UTF-8 是字节顺序无关的,它的字节顺序在所有系统中都是一样的,排序更加容易。因此 UTF-8 具有更高的性能。
不过如果是纯英文的话,用什么都可以,用GB2312也没问题。
再分析下出现乱码的原因
mysql+php产生乱码原因:
1. mysql数据库默认的编码是utf8,如果这种编码与你的PHP网页不一致,可能就会造成MYSQL乱码.
2. MYSQL中创建表时会让你选择一种编码,如果这种编码与你的网页编码不一致,也可能造成MYSQL乱码.
3. MYSQL创建表时添加字段是可以选择编码的,如果这种编码与你的网页编码不一致,也可能造成MYSQL乱码.
4. 用户提交页面的编码与显示数据的页面编码不一致,就肯定会造成PHP页面乱码.
5. 如用户输入资料的页面是big5码, 显示用户输入的页面却是gb2312,这种100%会造成PHP页面乱码.
6. PHP页面字符集不正确.
7. PHP连接MYSQL数据库语句指定的编码不正确.

最后讲 根治 的处方:
拿UTF8来举例
1、 保证页面的编码
如果是html 那么别忘了在 文件开头写上
<meta http-equiv="Content-Type" c>
如果是 php那么 记得在文件最上方写上
lzy © 2008, View php source
  • header("Content-type: text/html;charset=utf-8");
Parsed in 0.014 seconds

保证文件的编码必须是 UTF-8
解决方法 (1)把你的文件用记事本打开 ,选文件另存为,在文件名的下面有个编码  看看字符集是不是UTF-8 如果不是请修改
2、 保证数据库是UTF8

...........

查看全文(摘自:lzy 源创.博客)





欢迎访问我的BLOG
www.i-cando.cn
顶部
 


PHPEye开源社区


当前时区 GMT+8, 现在时间是 2008-10-14 23:41

    Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
Processed in 0.011617 second(s), 6 queries , Gzip enabled

清除 Cookies - 联系我们 - PHPEye开源社区 - Archiver