浏览器乱码原因和解决

解析:

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

解决方法:

使用软件进行编辑HTML网页内容

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

解决方法:
  • 如果网页设置编码是gbk的,而数据库储存数据编码格式是UTF-8的,这个时候程序查询数据库数据显示数据前进乡程序转码即可。
    例如PHP程序+mysql查询显示数据转码:
  • mysql_query("SET NAMES 'UTF8'"); //将查询数据转码为utf8,也就是转换为utf-8
  • mysql_query("SET NAMES 'GBK'");//将查询数据转码为GBK,如gbk2312

在写数据库连接文件时,写成:
$conn = mysql_connect("$host","$user","$password");
mysql_query("SET NAMES 'UTF8'");
mysql_select_db("$database",$conn);
然后在做页面时,注意这句:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
同样的,如果一开始写数据库连接文件时写成:
mysql_query("SET NAMES 'GBK'");
那页面也要相应变成:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

3. 浏览器不能自动检测网页编码,造成网页乱码。

解决方法:
  1. 在浏览器中找到转换编码的菜单转换编码
    • 在IE9浏览器中需要转码的网页空白出右键鼠标,即可选择“编码”。
    • 傲游浏览器中浏览需要转码的网页时,菜单“查看”-->“编码”即可选择转换编码
    • 谷歌浏览器中浏览需要转码的网页时,点击右上角“三横”图标选择“工具”-->“编码”即可选择切换网页编码达到让浏览器浏览此网页不是乱码。
  2. 如果自己开发网页,必须网页加入meta charset编码标签。
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    假如转换时候,不是记事本编辑添加meta charset编码标签就完成,这样同样会造成乱码,那是因为直接记事本添加或修改编码格式后,而对应Html超文本文档内容并没有随添加或修改编码格式而变化,这个时候需要真正意义上的转码,所以最好借助开发软件进行编码添加与修改。
    推荐DW软件中修改编码。在DW软件中进行编码修改或添加,并重新载入编码的网页。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • http://cenalulu.github.io/mysql/mysql-mojibake/ 10分钟学会理解和...
    dek阅读 3,375评论 0 3
  • 可以看我的博客 lmwen.top 或者订阅我的公众号 简介有稍微接触python的人就会知道,python中...
    ayuLiao阅读 8,432评论 1 5
  • HTML、XML、XHTML 有什么区别 1.HTML 是用来描述网页的一种语言,指的是超文本标记语言 (Hype...
    饥人谷_牛牛阅读 4,001评论 0 2
  • 章与章之间挺没逻辑没结构的,讲到哪是哪的感觉,所以在脑子里也只记下了一些零散不成体系的理论。 如何与自我相处呢?待...
    希可人儿阅读 1,774评论 0 0
  • 多少人痴爱纳兰的诗词,多少人迷恋纳兰的深情,又有多少人经往岁月恋恋不忘。人人争唱饮水词,纳兰心事几人知。他显赫的家...
    亦饰灵阅读 3,674评论 1 2