您当前的位置: 首页 > 前端教程 > HTML教程 > 提交表单获取表单数据乱码解决方法

提交表单获取表单数据乱码解决方法

作者:不详 来源:网络 发布时间: 2010-06-05 17:21 点击:
提交表单获取表单数据乱码解决方法 我在做一个调查问卷的页面,要发送到客户邮箱,以完成调查,但今天在测试时发现,通过 formaction=method=postid=form1target=_blankname=form1 /form 这种方法提交表单,然后在我的站点下获取表单后,获取的数据都是乱码.心中很是纳闷,.

提交表单获取表单数据乱码解决方法

  提交表单获取表单数据乱码解决方法
  
  我在做一个调查问卷的页面,要发送到客户邮箱,以完成调查,但今天在测试时发现,通过
  
  <formaction="…"method="post"id="form1"target="_blank"name="form1">
  
  …
  
  </form>
  
  这种方法提交表单,然后在我的站点下获取表单后,获取的数据都是乱码.心中很是纳闷,.
  
  莫非是编码原因?
  
  喜欢刨根问底的我继续寻找问题..
  
  我在后台获取数据页面里进行了utf-8转成gb2312的转换,,哦忘了说了,我是发给163邮箱滴.
  
  但是结果仍然是乱码.
  
  我想到了抓包工具..分析了下.发现了
  
  Accept-Encoding这么一个代码..
  
  于是Google好久.
  
  原来163对对post的数据进行了Gzip压缩.
  
  貌似.NET里面有对Gzip解压的类..找了很久..
  
  未果。。
  
  仔细回想下..我这种提交时方式相当于在不同的编码方式下提交表单(因为Accept-Encoding也是种编码方式)
  
  在vs2008里的<form>标签下敲了下回车发现了一个属性.accept-charset
  
  这个属性可以实现在不同的编码页面下提交表单.
  
  娘呀.算是找到救星了.
  
  <formaction="result.aspx"accept-charset="utf-8"method="post"id="form1"target="_blank"name="form1">
  
  …
  
  </form>
  
  在IE下还是会有乱码.上面这种写法是W3C标准的写法,在符合W3C标准的浏览器下不会出现乱码
  
  IE下这样写
  
  <formaction="result.aspx"accept-charset="utf-8"onsubmit="document.charset='utf-8';"method="post"id="form1"target="_blank"name="form1">
  
  …
  
  </form>
  
  OK!测试成功.

分享到:
本文"提交表单获取表单数据乱码解决方法"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(1)
50%
踩一下
(1)
50%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4