web编程的进!为什么说传递一个form要安全些?form是个怎么样的数据结构?

如题所述

第1个回答  2008-05-25
form就是表单呀..
<form method="post">可以隐藏你传送的数据.本回答被提问者采纳
第2个回答  2008-05-25
表单标记<form>基本知识
表单标记<form>
表单在Web网页中用来给访问者填写信息,从而能采集客户端信息,使网页具有交互的功能。一般是将表单设计在一个Html文档中,当用户填写完信息后做提交(submit)操作,于是表单的内容就从客户端的浏览器传送到服务器上,经过服务器上的 ASP 或 CGI 等处理程序处理后,再将用户所需信息传送回客户端的浏览器上,这样网页就具有了交互性。这里我们只讲怎样使用Html标志来设计表单。
表单是由窗体和控件组成的,一个表单一般应该包含用户填写信息的输入框,提交和按钮等,这些输入框,按钮叫做控件,表单很像容器,它能够容纳各种各样的控件。
一个表单用<form></form>标志来创建。也即定义表单的开始和结束位置,在开始和结束标志之间的一切定义都属于表单的内容。<form>标志具有action、method和target属性。action的值是处理程序的程序名(包括 网络路径:网址或相对路径),如:<form action="用来接收表单信息的url">,如果这个属性是空值("")则当前文档的url将被使用.当用户提交表单时,服务器将执行网址里面的程序(一般是CGI程序)。method属性用来定义处理程序从表单中获得信息的方式,可取值为 GET 和 POST 的其中一个。GET方式是处理程序从当前Html文档中获取数据,然而这种方式传送的数据量是有所限制的,一般限制在1KB(255个字节)以下。POST方式传送的数据比较大,它是当前的Html文档把数据传送给处理程序,传送的数据量要比使用GET方式的大的多。target属性用来指定目标窗口或目标帧。可选当前窗口_self,父级窗口_parent,顶层窗口_top,空白窗口_blank。
表单标签的格式: <FORM action="url" method=get|post name="myform" target="_blank">... </FORM>
10-2 写入标记<input>
在html语言中,标记<input>具有重要的地位,它能够将浏览器中的控件加载到html文档中,该标记是单个标记,没有结束标记。<input type="">标志用来定义一个用户输入区,用户可在其中输入信息。此标志必须放在 <form></form>标志对之间。<input type="">标志中共提供了九种类型的输入区域,具体是哪一种类型由type属性来决定。请看下边列表:
type属性值定义
type属性取值 输入区域类型 控件的属性及说明
<input type="TEXT" size="" maxlength=""> 单行的文本输入区域,size与maxlength属性用来定义此种输入区域显示的尺寸大小与输入的最大字符数 (1)name 定义控件名称(2)value 指定控件初始值,该值就是浏览器被打开时在文本框中的内容(3)size 指定控件宽度,表示该文本输入框所能显示的最大字符数。(4)maxlength 表示该文本输入框允许用户输入的最大字符数。(5)onchang 当文本改变时要执行的函数(6)onselect 当控件被选中时要执行的函数(7)onfocus 当文本接受焦点时要执行的函数
<input type="button"> 普通按钮,当这个按钮被点击时,就会调用属性onclick指定的函数;在使用这个按钮时,一般配合使用value指定在它上面显示的文字,用onclick指定一个函数,一般为JavaScript的一个事件。 这三个按钮有下面共同的属性:(1)name 指定按钮名称(2)value 指定按钮表面显示的文字(3)onclick 指定单击按钮后要调用的函数(4)onfocus 指定按钮接受焦点时要调用的函数
<input type="SUBMIT"> 提交到服务器的按钮,当这个按钮被点击时,就会连接到表单form属性action指定的url地址。
<input type="RESET"> 重置按钮,单击该按钮可将表单内容全部清除,重新输入数据。
<input type="CHECKBOX" checked> 一个复选框,checked属性用来设置该复选框缺省时是否被选中,右边示例中使用了三个复选框 checkbox用于多选,有以下属性:(1) name 定义控件名称(2) value 定义控件的值(3) checked 设定控件初始状态是被选中的(4) onclick 定义控件被选中时要执行的函数(5) onfocus 定义控件为焦点时要执行的函数
<input type="HIDDEN"> 隐藏区域,用户不能在其中输入,用来预设某些要传送的信息 hidden 隐藏控件,用于传递数据,对用户来说是不可见的;属性有:(1)name 控件名称,(2)value 控件默认值(3)hidden隐藏控件的默认值会随表单一起发送给服务器,例如:<input type="Hidden" name="ss" value="688"> 控件的名称设置为ss,设置其数据为"688",当表单发送给服务器后,服务器就可以根据hidden的名称ss,读取value的值688;
<input type="IMAGE" src="URL"> 使用图像来代替Submit按钮,图像的源文件名由src属性指定,用户点击后,表单中的信息和点击位置的X、Y坐标一起传送给服务器 (1)name 指定图像按钮名称(2)src 指定图像的url地址
<input type="PASSWARD"> 输入密码的区域,当用户输入密码时,区域内将会显示"*"号 password 口令控件表示该输入项的输入信息是密码,在文本输入框中显示"*",属性有:(1)name 定义控件名称(2)value 指定控件初始值,该值就是浏览器被打开时在文本框中的内容(3)size 指定控件宽度,表示该文本输入框所能显示的最大字符数。(4)maxlegnth 表示该文本输入框允许用户输入的最大字符数。
<input type="RADIO"> 单选按钮类型,checked属性用来设置该单选框缺省时是否被选中,右边示例中使用了三个单选框 radio用于单选,有以下属性:(1) name 定义控件名称(2) value 定义控件的值(3) checked 设定控件初始状态是被选中的(4) onclick 定义控件被选中时要执行的函数(5) onfocus 定义控件为焦点时要执行的函数
当为单选项时,所有按钮的name属性必需相同,如:都设置为my_radio。
以上类型的输入区域有一个公共的属性name,此属性给每一个输入区域一个名字。这个名字与输入区域是一一对应的,即一个输入区域对应一个名字。服务器就是通过调用某一输入区域的名字的value值来获得该区域的数据的。而value属性是另一个公共属性,它可用来指定输入区域的缺省值。
应用格式
<input 属性1 属性2......>
常用属性:
1 name 控件名称
2 type控件类型 如:botton 普通按钮,texe 文本框等
3 align 指定对齐方式,可取top, bottom, middl
4 size 指定控件的宽度
5 value 用于设定输入默认值
6 maxlength在单行文本的时候允许输入的最大字符数
7 src 插入图像的地址
8 event 指定激发的事件
实例:10-2.html
<html><head><title><input>的控件</title></head><body>
<center><h2><font color="#339933"><input>控件的使用</font></h2></center>
<pre>
<form action="" method="post" target="_parent">单行的文本输入区域: <INPUT name=T1 type=text>普通按钮: <INPUT name=B1 type=button value=button>提交按钮: <INPUT name=B1 type=submit value=Submit>重置按钮: <INPUT name=B1 type=reset value=Reset> 复选框: 你喜欢哪些教程:<INPUT name=C1 type=checkbox value=ON> Html入门 <INPUT CHECKED name=C2 type=checkbox value=ON> 动态Html <INPUT name=C3 type=checkbox value=ON> ASP图像来代替Submit按钮: <INPUT border=0 name=I2 height=20 src="../../imge/nnn.gif" type=image width=65> 密码的区域: <INPUT name=p1 type=password> </P>单选按钮: 你的休闲爱好是什么:<INPUT CHECKED name=R1 type=radio value=V1> 音乐 <INPUT name=R1 type=radio value=V2> 体育 <INPUT name=R1 type=radio value=V3> 旅游</form> </pre> <a href="#" onClick="javascript:window.history.back()"><FONT size=4>返回</FONT></A></SUB></PRE></body></html>
10-3 菜单下拉列表框<select></select><option>
<select></select>标志对用来创建一个菜单下拉列表框。此标志对用于<form></form>标志对之间。<select>具有multiple、name和size属性。multiple属性不用赋值,直接加入标志中即可使用,加入了此属性后列表框就成了可多选的了;name是此列表框的名字,它与上边讲的name属性作用是一样的;size属性用来设置列表的高度,缺省时值为1,若没有设置(加入)multiple属性,显示的将是一个弹出式的列表框。 <option>标志用来指定列表框中的一个选项,它放在<select></select>标志对之间。此标志具有selected和value属性,selected用来指定默认的选项,value属性用来给<option>指定的那一个选项赋值,这个值是要传送到服务器上的,服务器正是通过调用<select>区域的名字的value属性来获得该区域选中的数据项的。
实例:10-3-1.html
<html><head> <title>下拉列表框</title></head><body><form action="" method="post"><p>请选择最喜欢的男歌星:<select name="gx1" size="1"><option value="ldh">刘德华<option value="zhxy" selected>张学友<option value="gfch">郭富城<option value="lm">黎明</select></form></body></html>
实例:10-3-2.html
<html><head> <title>复选的列表框</title></head><body><form action="" method="post"><p>请选择最喜欢的女歌星:<select name="gx2" multiple size="4"><option value="zhmy">张曼玉<option value="wf" selected>王菲<option value="tzh">田震<option value="ny">那英</select></form></body></html>
10-4 多行的文本框.<textarea></textarea>
<textarea></textarea>用来创建一个可以输入多行的文本框,此标志对用于<form></form>标志对之间。<textarea>具有以下属性:
(1)onchange指定控件改变时要调用的函数(2)onfocus当控件接受焦点时要执行的函数(3)onblur当控件失去焦点时要执行的函数(4)onselect当控件内容被选中时要执行的函数(5)name这文字区块的名称,作识别之用,将会传及 CGI。 (6)cols这文字区块的宽度。 (7)rows这文字区块的列数,即其高度。 (8)wrap属性 定义输入内容大于文本域时显示的方式,可选值如下: *默认值是文本自动换行;当输入内容超过文本域的右边界时会自动转到下一行,而数据在被提交处理时自动换行的地方不会有换行符出现; *Off,用来避免文本换行,当输入的内容超过文本域右边界时,文本将向左滚动; *Virtual,允许文本自动换行。当输入内容超过文本域的右边界时会自动转到下一行,而数据在被提交处理时自动换行的地方不会有换行符出现; *Physical,让文本换行,当数据被提交处理时换行符也将被一起提交处理。 这里列与行是以字符数为单位的。
实例:10-4.html<html><head> <title>多行的文本框</title></head><body><form action="" method="post"><p>您的意见对我很重要:<textarea name="yj" clos="20" rows="5">请将意见输入此区域</textarea></form></body></html>

参考资料:http://hi.baidu.com/gisland/blog/item/296eb50e784125e636d1229b.html