合肥市高新区长江西路与科学大道交口5F创业园A座309 合肥网站建设 - 合肥网站制作 - 安徽网络公司
136 5560 1775
为政府搭建高效应用平台,为企业塑造良好形象,为网民营造美丽温馨家园!

分析提交表单到邮箱数据乱码的原因

发布日期:2011-11-03  浏览次数:1985

启迈合肥网络公司在做一个客户咨询留言的页面,要发送到客户邮箱,但今天在测试时发现,通过

<form action="…"  method="post" id="form1" target="_blank" name="form1">

</form>

这种方法提交表单, 然后在我的站点下获取表单后,获取的数据都是乱码,感觉很奇怪?

分析提交表单到邮箱数据乱码的原因是什么呢?
合肥网站建设在后台获取数据页面里进行了utf-8转成gb2312的转换,
但是结果仍然是乱码。
我想到了抓包工具.分析了下.发现了

Accept-Encoding 这么一个代码..

于是BAIDU了下, .

原来邮箱对post的数据进行了Gzip压缩.

貌似.NET里面有对Gzip解压的类。
仔细回想下,我这种提交时方式相当于在不同的编码方式下提交表单(因为Accept-Encoding 也是种编码方式)

在vs2008里的<form>标签下敲了下回车 发现了一个属性.accept-charset

这个属性可以实现在不同的编码页面下提交表单.

<form action="result.aspx" accept-charset="utf-8" method="post" id="form1" target="_blank" name="form1">

</form>

在IE下还是会有乱码,上面这种写法是W3C标准的写法,在符合W3C标准的浏览器下不会出现乱码

IE下这样写

<form action="result.aspx" accept-charset="utf-8" onsubmit="document.charset = 'utf-8';"  method="post" id="form1" target="_blank" name="form1">

</form>

再次测试发送邮件,测试成功!

About Us

合肥启迈网络科技有限公司专业从事网站建设、网站优化、虚拟主机、域名 注册等网络服务。专业的设计团队、一流的服务态度和先进的网络技术让我 们在竞争激烈的网站设计这行业中蓬勃发展.......[ 查看详情]
服务热线:13655601775

Contact Us

网址:www.qimaikj.com

熊经理:13655601775
E-mail:qimai@qimaikj.com
地址:合肥市高新区长江西路与科学大道交口5F创业园A座309

免费咨询