<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
解决方案 »
- 怎么获得form中单个输入选项的参数?(比如说检测用户名这种功能)
- 交流用PlChart类做走势图经验
- mysql可不可以设置自动增长列的步长?
- 这条SQL语句要怎么写呢?
- jquery报错。。新人求助!谢谢各位。
- 在del.php?id=3中,我想删除的是id=3的记录,如何判断id的值是数字型的,而不是del.php?id=3 or id=5这种?
- PHP代碼生成器發布,順便散分
- 关于 target=_blank 的问题, 请教高手!
- 高手进(低手不要进)问:服务器端能不能获得我的ip地址及电脑名称\组\机器码\...详情见内...
- 密吗认证问题?奇怪的狠
- 请问怎样把国外网站的PHP+Mysql源码支持中文
- 一个关于用php输出文件的问题(急)
<META http-equiv=Content-Type content="text/html; charset=UTF-8">如果自动选的是UTF-8的话,应该不会有乱码
如果不在同一个文件必须保证两者保存时使用的编码相同,都存成utf-8。
http://phnessu4.googlepages.com/phpcode1动态网页的三个统一编码动态网页的3个申明编码统一,否则回乱码。一般来说,乱码的出现有2种原因,首先是由于编码(charset)设置错误,导致浏览器以错误的编码来解析,从而出现了满屏乱七八糟的“天书”,其次是文件被以错误的编码打开,然后保存,比如一个文本文件原先是GB2312编码的,却以UTF-8编码打开再保存。要解决上述乱码问题,首先需要知道开发中哪些环节涉及到了编码:
1、文件编码:指的是页面文件(.html .php等)本身是以何种编码来保存的。记事本和Dreamweaver或EditPlus再打开页面时候会自动识别文件编码因而不太会出问题。2、页面申明编码:在HTML代码HEAD里面,可以用
<meta http-equiv="Content-Type" content="text/html; charset="XXX" />
来告诉浏览器网页采用了什么编码,目前中文网站开发中XXX主要用的是GB2312和UTF-8两种编码。 3、数据库连接编码:指的是进行数据库操作时候以哪种编码与数据库传输数据,这里需要注意的是不要与数据库本身的编码混淆,比如MySQL内部默认是latin1编码,也就是说Mysql是以latin1编码来存储数据,以其他编码传输给Mysql的数据会被转换成latin1编码。
应用:数据库采用UTF8编码,而页面申明编码是GB2312,这是最常见的产生乱码的原因。这时候在PHP脚本里面直接SELECT数据出来的就是乱码,需要在查询前先使用:
mysql_query("SET NAMES GBK"); 或 mysql_query("SET NAMES gb2312");
(这个语句相当于执行了
SET character_set_client=gb2312;
SET character_set_results=gb2312;
SET character_set_connection=gb2312;
不论是插入、更新、删除还是查询操作,只要是操纵数据库,都要先执行SET NAMES “gb2312″,这样才能保证插入和显示的正确性。如果插入操作前没有执行这条语句,仅在查询时执行该语句,则仍然无法保证显示的正确性。) 来设定MYSQL连接编码,保证页面申明编码与这里设定的连接编码一致(GBK是GB2312的扩展)。如果页面是UTF-8编码的话,可以用: mysql_query("SET NAMES UTF8");
php和html的文本格式都是UTF-8了
meta也是UTF-8
但是还是有乱码.
echo "中国" 不会出现乱码但是
$str="中国"
echo $str 就乱码了请问如何解决? 谢谢!
(现在, php和html的文本格式都是UTF-8了,meta也是UTF-8 )
保存时保存为utf-8