form表单有什么作用?有哪些常用的input 标签,分别有什么作用?
表单标签
<form></form>
功能:用于申明表单,定义采集数据的范围,也就是<form>和</form>里面包含的数据将被提交到服务器或者电子邮件里。
语法:<form acrtion="url" method="get|post" enctype="mine" target="...">. . .</form>
属性解释见下表:
action=url用来指定处理提交表单的格式.它可以是一个URL地址(提交给程式)或一个电子邮件地址.
method=get或post指明提交表单的HTTP方法.可能的值为: post:POST方法在表单的主干包含名称/值对并且无需包含于action特性的URL中. get:不赞成。GET方法把名称/值对加在action的URL后面并且把新的URL送至服务器.这是往前兼容的缺省值.这个值由于国际化的原因不赞成使用.
enctype=cdata指明用来把表单提交给服务器时(当method值为"post")的互联网媒体形式.这个特性的缺省值是"application/x-www-form-urlencoded"
TARGET="..."指定提交的结果文档显示的位置: _blank :在一个新的、无名浏览器窗口调入指定的文档; _self :在指向这个目标的元素的相同的框架中调入文档; _parent :把文档调入当前框的直接的父FRAMESET框中;这个值在当前框没有父框时等价于_self; _top :把文档调入原来的最顶部的浏览器窗口中(因此取消所有其它框架);这个值等价于当前框没有你框时的_self.
input标签详细内容参考//www.greatytc.com/p/fec9b1ba1c7c
附上W3C文档实例
http://www.w3school.com.cn/tags/tag_form.asp
post 和 get 方式的区别?
1.本质
Get是向服务器发索取数据的一种请求,而Post是向服务器提交数据的一种请求
2.服务器端获取值的方法
get方式提交的数据,服务器端使用request.QueryString获取变量的值
post方式提交的数据,服务器端使用request.Form获取数据
3.安全性
get方式安全性低,post方式较安全。但是post方式执行效率要比get方式差一些。
4.机制
get是把参数数据队列加到提交表单的action属性所指的URL中,在URl中,值和表单各个字段一一对应,并且这些在URl中对用户来说是可见的,即用户时可以看到的。
post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到action属性所指的URL地址,对于用户来说,这是透明的。
5.大小
URL不存在参数上限的问题,HTTP协议规范没有对URL长度进行限制。这个限制是特定的浏览器及服务器对它的限制。IE对URL长度的限制是2083字节(2K+35)。对于其他浏览器,如Netscape、FireFox等,理论上没有长度限制,其限制取决于操作系统的支持。
理论上讲,POST是没有大小限制的,HTTP协议规范也没有进行大小限制,说“POST数据量存在80K/100K的大小限制”是不准确的,POST数据是没有限制的,起限制作用的是服务器的处理程序的处理能力。
对于ASP程序,Request对象处理每个表单域时存在100K的数据长度限制。但如果使用Request.BinaryRead则没有这个限制。
由这个延伸出去,对于IIS 6.0,微软出于安全考虑,加大了限制。我们还需要注意:
1).IIS 6.0默认ASP POST数据量最大为200KB,每个表单域限制是100KB。
2).IIS 6.0默认上传文件的最大大小是4MB。
3).IIS 6.0默认最大请求头是16KB。
IIS 6.0之前没有这些限制。
总结:
one:get方式的安全性较post方式要差一些,所以,包含一些重要的信息的话,简易使用post数据提交方式
two:在做查询统计的时候,使用get方式要更好一些;而在做数据的添加,修改或删除操作时,建议使用post数据提交方式
在input里,name 有什么作用?
参考W3C文档
http://www.w3school.com.cn/tags/att_input_name.asp
定义和用法
name 属性规定 input 元素的名称。
name 属性用于对提交到服务器后的表单数据进行标识,或者在客户端通过 JavaScript 引用表单数据。
注释:只有设置了 name 属性的表单元素才能在提交表单时传递它们的值。
举例,就是当你设置多个checkbox时,设置相同的name,把它们归到一起,设置不同的value,在提交表单时,后台可以拿到对应的数据
radio 如何 分组?
把name设置成一样的就分成一组了,然后设置不同的value。
placeholder 属性有什么作用?
placeholder 属性提供可描述输入字段预期值的提示信息(hint)。
该提示会在输入字段为空时显示,并会在字段获得焦点时消失。
注释:placeholder 属性适用于以下的 <input> 类型:text, search, url, telephone, email 以及 password。
W3C文档
http://www.w3school.com.cn/tags/att_input_placeholder.asp
type=hidden隐藏域有什么作用? 举例说明
//www.greatytc.com/p/268c6c6ed526
除了上述的地址说的作用,若愚老师还提到可以防范网络攻击,比如在提交表单的时候设置特定的隐藏域,服务器会匹配这个值,有这个值的就是合法安全用户,这样可以抵御一些网络攻击。