form表单提交以gbk编码

本文探讨了form标签的编码属性,包括accept-charset和enctype,详细解释了post和get提交方式下,GBK编码如何影响表单数据的发送。在post提交中,GBK编码会改变HTTP内容;而在get提交中,GBK编码则会影响URL参数的编码显示。
摘要由CSDN通过智能技术生成

关于编码的 form 标签的属性

  • accept-charset:可以指定form编码形式
  • enctype: 规定在发送表单数据之前如何对其进行编码。有三种设置类型
  • 默认为application/x-www-form-urlencoded:发送前编码所有字符
  • multipart/form-data:不对字符编码,包含文件上传控件的表单时,必须使用该值
  • text/plain:空格转换为 "+" 加号,但不对特殊字符编码。
  • method:规定用于发送 form-data 的 HTTP 方法。有 post 和 get

post提交

这里我们使用编码为UTF-8的页面做提交

<form action="/example/demo_form" method="post">
  name: <input type="text" name="fname" /><br />
  <input type="submit" value="提交" />
</form>

提交后为http的内容为

fname=%E5%A5%BD

如果指定 accept-charset 为GBK

<form action="/example/demo_form" method="post" accept-charset="GBK">
  name: <input type="text" name="fname" /><br />
  <input type="submit" value="提交" />
</form>

提交的内容为

fname=%BA%C3
get 提交方式

同样适用UTF-8页面编码提交数据

<form action="/example/demo_form" method="get">
  name: <input type="text" name="fname" /><br />
  <input type="submit" value="提交" />
</form>

由于是get形式提交,参数会在请求的url上展示

example/demo_form?fname=%E5%A5%BD

如果指定 accept-charset 为 GBK

<form action="/example/html5/demo_form.asp" method="get" accept-charset="GBK">
  name: <input type="text" name="fname" /><br />
  <input type="submit" value="提交" />
</form>

在提交的url后面的参数编码变为了

example/demo_form?fname=%E5%A5%BD


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值