您的位置:首页 > 其它

关于制作网页时乱码的问题详解

2016-03-31 23:26 387 查看

关于制作网页时乱码的问题详解

很多朋友在制作网页时会遇到一个很头疼的问题,就是乱码问题,有时改改编码就解决了,那是运气不错,而有时无论如何也解决不了,那就没办法了。我在制作网页时也遇到了不少问题,最后实在受不了了,只好花了三天时间来仔细研究乱码问题,小有成果,在这里和大家分享一下。

乱码在我看来分三种情况:

1.html乱码。

2.javascript乱码

3.数据库乱码(我用的是mysql,其他也一样,操作数据库是直接用phpmyadmin操作)

网页设计基本就这三种情况。笔者不幸的全遇到了(这是巧合吗?坑啊),但幸运的是,在笔者阅读了大量相关资料以及对乱码原理深入理解后,已经将其全部解决。

注:无论哪种乱码问题,笔者在这里建议制作网页前就将数据库、页面编码统一为utf8或gb231。这是一种良好的习惯,这种习惯会减少不必要乱码问题的出现。

工具/原料

你有一个Dreamweaver的话解决html乱码会很方便。(不是必须)

你有一个Wamp的话,里面附带phpmyadmin,会让你解决数据库乱码很方便。(同样不是必须)

方法/步骤

1

html乱码的解决

1.你没有Dreamweaver的话:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

把这行代码复制到你的<head></head>之间,这会使你的网页打开时,浏览器默认编码为utf8,当然,建议你所有的网页编码统一,都设置为utf8,或者都设置为gb2312。

2.如果你有Dreamweaver的话:

你可以不必记住这行代码,因为Dreamweaver可以设置,如图:

选择"页面属性"(上边的修改中也可以找到),选择"标题/编码",更改编码确保编码统一(建议统一为utf8或gb2312)

选择统一编码后点击“应用”,Dreamweaver会自动将一行代码加入你的网页。

但是记住,要统一编码。在你制作第一张网页时就这样设置,这样做的好处是你以后用Dreamweaver编辑的每一张网页都会自动统一编码











2

js乱码的解决

这里js乱码是指由js制作的弹窗内容为乱码的情况,这种情况很头疼,但一般不会出现,如果出现,不好解决。

1.若你的js弹窗内容出现乱码,首先检查原网页代码中的输出内容是否是乱码(由于乱改页面设置,导致本来的汉字变成乱码)

2.如果你确保你的原网页代码中不是乱码,那么说明js输出内容与页面编码不符,这时我们应强制将输出内容转变编码与页面编码统一。

强制转换编码的方法有很多,我这里使用php做到了这些

<?php

$ss=iconv("utf8" , "gb2312//IGNORE" , "你想输入的汉字") ;

echo $ss;

echo "<script language=javascript>alert('$ss');</script>";

?>

这样做的好处是,无论网页编码是utf8还是gb2312,你的js弹窗内容都不会是乱码。但缺点也很明显,你的文件后缀名从.html需要改为.php(否则php不被编译),而且php执行占用服务器内存,但只是转换编码并不用担心消耗太多服务器内存。

3

数据库乱码的解决

这里数据库乱码是指

1.插入正常数据后,数据库里显示乱码

2.正常数据读取出在页面显示乱码

3.建立数据库时数据库(表、字段)的编码有问题

解决办法:

1.插入数据库前将数据强行转换编码,与数据库统一。(这里笔者操作数据库所用的是php)

<?php

$ss=iconv("utf8" , "gb2312//IGNORE" , "你想插入的汉字数据") ;

mysql_query("insert into 表名(字段名) values(‘$ss’)");

?>

这样在数据库内查看数据时,不会出现乱码。但如果你将页面编码与数据库编码统一的话,根本不会出现这种问题。

2.正常数据读取出在页面显示乱码,首先检查数据库内容是否是乱码,如果是,参照方法1:“插入正常数据后,数据库里显示乱码”解决,这时数据库里数据正常,但页面输出仍是乱码,说明html编码有问题或不统一。参照“html乱码的解决“进行。

3.你将页面调整统一编码,可数据库编码不统一,你又不想删除数据库重新建立。又嫌插入数据的地方太多,那怎么办,只好更改数据库编码了。

打开phpmyadmin。如图,选择数据库的“操作”-->"整理",然后统一编码。

更改数据库后再逐个检查数据表的“整理”,确认编码统一!!

















4

这里是建立数据库时就统一编码的方法,如果早这么做就不会遇到乱码问题!!下一回记住了。在建表时就统一最方便了。











END

注意事项

无论哪种乱码问题,笔者在这里建议制作网页前就将数据库、页面编码统一为utf8或gb231。这是一种良好的习惯,这种习惯会减少不必要乱码问题的出现。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: