+ -
当前位置:首页 → 问答吧 → 高分求助:web开发时遇到的字符编码问题

高分求助:web开发时遇到的字符编码问题

时间:2010-07-06

来源:互联网

各位大侠啊,小弟最近在做web编程时遇到了很多字符编码和中文乱码的问题,把我快整疯了!
我用的开发平台是windows+php5+apache+mysql
我现在有一个很头疼的问题,烦请高手给予解决。
我的PHP.ini配置文件中设置default_charset="GB2312"或"utf-8",我在写.html(或者.php)文件时,保存成某一种编码格式,比如utf-8,在文件的head里面加入<meta http-equiv="Content-Type" Content="text/html;charset=utf-8"/>或者<meta http-equiv="Content-Type" Content="text/html;charset=gb2312"/>
我的问题就是:这三个地方的设置到底是什么意义?这三个地方的设置有什么关系?这三个地方的设置彼此之间有什么影响?到底应该怎么设置才能彻底避免中文乱码问题?
这个问题困扰我好久了,弄得我心情很不好,烦请有理解的比较深的高手们给我详细地说一下,感激不尽!

作者: fromict   发布时间: 2010-07-06

http://blog.csdn.net/xiaofanku/archive/2008/06/25/2584856.aspx

作者: xiaofanku   发布时间: 2010-07-06

PHP.ini配置文件中设置default_charset 是php默认处理的字符集,如果一个网页没有指定字符集,则php按照default_charset的设置进行处理。

meta http-equiv 就是指定当前网页的字符集,当然,网页是不会自动帮你转换字符集编码的,这也就是为什么指定了字符集还是有乱码的原因。

解决办法也简单,用 iconv 统一 一下输出就OK了。

作者: dcomman   发布时间: 2010-07-07

在数据库里也要编码一致,例如建表:
create table USER_FRIEND(id int NOT NULL, friend int NOT NULL,) DEFAULT CHARSET=utf8

作者: cqzs632   发布时间: 2010-07-20

热门下载

更多