一开始用的时候,我会容易把表单和表格搞混淆,其实在html的语义当中可以很明显的区别出来。
表格我们用的是table标签,包括一些td tr th等等。表单的话用的是form,提交的是一张表格,里面有信息,它是用于搜集不同类型的用户输入,最常见的就是注册时候用的用户名和密码了。表单元素是允许用户在表单中(文本域、下拉框、单选框和复选框等)输入信息的元素。
表单的信息必须要用form包裹起来,这样就是把输入框的信息打包到输入框里面去了。在用form的时候必须要有action,这个是用于提交表单信息的地址,比方说实例中action的路径是"jacktang/"那么表单信息会提交到服务器后台的jacktang文件夹下面。
form里面除了action之外,还有method,这个用的多是两种,post和get。具体区别如下:
get方式,在浏览器地址栏能够看到提交的信息,把提交的信息组装起来,放到链接里面去。
post方式,填写的信息依然可以发送到服务器,但是链接不会变。安全性会更高。
value的值要放进去,name
raido 复选框的情况
type等于file,name选择文件 accept表示只有该格式的文件可以选择
selec形式下拉菜单,用的是option ,有多个选择 一定要写name
input表单中的name 很重要,它是用来表示浏览器传入后台的数据,不写的话,后台不知道他是谁的,就不会保存了,相当于没有写名字的试卷,老师不会批的。
下面梳理几个知识点
1,http请求的最大长度普遍认为是8K,8192字节,超过这个范围浏览器不会提示报错,有些服务器可能会报错414.
2,input的submit其实个提交的button功能一样
3,label可以作为输入框之前的文本内容
4.type为hidden有两个作用,一个是辨别用户真伪,一个是服务器标识数据,尤其是同类型的数据。
5,CSEF攻击是全名跨站请求伪造,攻击者构造出后台的某个功能接口地址,并且诱导其他用户去点击或者用其他方法让该地址自动加载,让服务器误以为是该用户的合法操作,从而达到攻击者自身需要的功能。