首页 > web前端 > 前端问答 > html文字为什么会乱码

html文字为什么会乱码

醉折花枝作酒筹
发布: 2021-04-14 18:20:55
原创
15986 人浏览过

html文字乱码的原因:1、网页是gbk编码,html文档是utf-8编码,编码方式不一致导致乱码;2、html网页编码是gbk,程序从数据库中调出的内容是utf-8编码,编码方式不一致导致乱码。

html文字为什么会乱码

本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。

造成html网页乱码原因主要是html源代码内中文字内容与html编码不同造成。但无论是哪种情况造成乱码在网页开始时候都需要设置网页编码。

<meta charset="utf-8">
登录后复制

html网页乱码效果截图@3E9B]IFS9_OO7T22222{$K.png

乱码造成原因

1、比如网页源代码是gbk的编码,而内容中的中文字是utf-8编码的,这样浏览器打开即会出现html乱码。反之网页是编码utf-8,内容是gbk也会出现乱码。

2、html网页编码是gbk,而程序从数据库中调出呈现是utf-8编码的内容也会造成编码乱码。

解决乱码方法

第一种,html网页源代码编码与中文字输入编码不同。

解决方法:

使用软件进行编辑HTML网页内容,推荐使用DW软件进行HTML代码编辑和开发。

尽量不要直接使用记事本进行编辑HTML代码。

第二种,如果网页设置编码是gbk的,而数据库储存数据编码格式是UTF-8的,这个时候程序查询数据库数据显示数据前进乡程序转码即可。

例如PHP程序+mysql查询显示数据转码:
mysql_query("SET NAMES 'UTF8'"); //将查询数据转码为utf8,也就是转换为utf-8
mysql_query("SET NAMES &#39;GBK&#39;");//将查询数据转码为GBK,如gbk2312

在写数据库连接文件时,写成:

$conn = mysql_connect("$host","$user","$password"); 
mysql_query("SET NAMES &#39;UTF8&#39;");
 mysql_select_db("$database",$conn);
登录后复制

然后在做页面时,注意这句:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
登录后复制

这样不管输入数据库的中文,还是页面显示,就都正常了。
在DW CS4版里,默认生成的也是utf8页面。

同样的,如果一开始写数据库连接文件时写成:

mysql_query("SET NAMES &#39;GBK&#39;");
登录后复制

那页面也要相应变成:

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
登录后复制

其它asp程序或其它程序语言网站根据实际情况到百度查询转换编码方法。

推荐学习:html视频教程

以上是html文字为什么会乱码的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板