k8凯发一触即发|Home

135-9299-6491
 
分析提交表单到邮箱数据乱码的原因
日期:12-07 浏览次数:39

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

<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>

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

← 上一篇 下一篇 → 返回首页
如有意向,请联系我们的客户经理
我们会根据您的需求为你制定详细的解决方案
在线咨询 or 拨打业务热线:135-9299-6491
在线咨询
咨询在线客服
热线电话
解决方案
扫一扫

扫一扫
关注k8凯发一触即发

全国咨询热线
135-9299-6491

返回顶部