在表单里使用”post”和”get”有什么区别

区别

在Form里面,可以使用post也可以使用get。它们都是method的合法取值。但是,post和get方法在使用上至少有两点不同:
1、Get方法通过URL请求来传递用户的输入。Post方法通过另外的形式。
2、Get方式的提交你需要用Request.QueryString来取得变量的值,而Post方式提交时,你必须通过Request.Form来访问提交的内容。

仔细研究下面的代码。你可以运行之来感受一下:

代码
<!--两个Form只有Method属性不同-->
<FORM ACTION=“getpost.asp” METHOD=“get”>
<INPUT TYPE=“text” NAME=“Text” VALUE=“Hello World”></INPUT>
<INPUT TYPE=“submit” VALUE=“Method=Get”></INPUT>
</FORM>
<BR>
<FORM ACTION=“getpost.asp” METHOD=“post”>
<INPUT TYPE=“text” NAME=“Text” VALUE=“Hello World”></INPUT>
<INPUT TYPE=“submit” VALUE=“Method=Post”></INPUT>
</FORM>

<BR>
<BR>

<% If Request.QueryString(“Text”) <> ““ Then %>
通过get方法传递来的字符串是: “<B><%= Request.QueryString(“Text”) %></B>“<BR>
<% End If %>

<% If Request.Form(“Text”) <> ““ Then %>
通过Post方法传递来的字符串是: “<B><%= Request.Form(“Text”) %></B>“<BR>
<% End If %>

说明
把上面的代码保存为getpost.asp,然后运行,首先测试post方法,这时候,浏览器的url并没有什么变化,返回的结果是:
通过Post方法传递来的字符串是: "Hello World"
然后测试用get方法提交,请注意,浏览器的url变成了:
http://localhost/general/form/getpost.asp?Text=Hello+World
而返回的结果是:
通过get方法传递来的字符串是: "Hello World"
最后再通过post方法提交,浏览器的url还是:
http://localhost/general/form/getpost.asp?Text=Hello+World
而返回的结果变成:
通过get方法传递来的字符串是: "Hello World"
通过Post方法传递来的字符串是: "Hello World"

提示
通过get方法提交数据,可能会带来安全性的问题。比如一个登陆页面。当通过get方法提交数据时,用户名和密码将出现在URL上。如果:
1、 登陆页面可以被浏览器缓存;
2、 其他人可以访问客户的这台机器。
那么,别人即可以从浏览器的历史记录中,读取到此客户的账号和密码。所以,在某些情况下,get方法会带来严重的安全性问题。
建议
在Form中,建议使用post方法。

时间: 2024-11-29 22:40:29

在表单里使用”post”和”get”有什么区别的相关文章

表单提交中Get和Post方式的区别有5点

1. get是从服务器上获取数据,post是向服务器传送数据. 2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到.post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址.用户看不到这个过程. 3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据. 4

enctype=&amp;amp;quot;multipart/form-data&amp;amp;quot;后台取不到表单里的值

问题描述 后台取不到表单里的值 问题补充:用的是commons-fileupload组件,想用hibernate进行存储,有知道思路的帮忙看看!新手请教 解决方案 // // //1 创建解析工厂// DiskFileItemFactory factory = new DiskFileItemFactory();// //2 获取一个解析器// ServletFileUpload upload = new ServletFileUpload(factory);// //3 对请求对象进行解析//

如何获取同一个form表单里的对象的value值呢

问题描述 如何获取同一个form表单里的对象的value值呢 <input type="hidden" id="district<%=i%>" name="district" > <script> document.getElementById("district"+i).value=document.getElementById("shuru"+i).value <

获得表单里的值

问题描述 请问大家我一个页面有两个表单,怎么获得其中一个表单里的所有输入框里的值? 问题补充:Dxx23 写道 解决方案 alert(document.all.form1.getElementsByTagName("input").value) 这个方法返回的是一个数组就是input元素数组,如过你只有一个那应该alert(document.all.form1.getElementsByTagName("input")[0].value) 事实上,无论你多少个,即使

jquery- Jquery表单里colModel怎么显示男女

问题描述 Jquery表单里colModel怎么显示男女 {name:'sex', index:'sex', width:'70', align:'center',editoptions:{value:'1:男;2:女'}}, 这样不能显示 解决方案 注意jqGrid放grid.locale-cn.js的后面.否则会报错. jQuery("#editgrid").jqGrid({ datatype: "local", height: 450, colNames:['

php-JS表单里怎样写唯一标示符,求指导,谢谢!

问题描述 JS表单里怎样写唯一标示符,求指导,谢谢! layer += '<div class="layer_title"><h1>注册</h1><a href="javascript:;" title="关闭">x</a></div>'; layer += '<form action="register.php" method="POST

html5 form表单里有多个 input type=&amp;amp;quot;search&amp;amp;quot;的问题?

问题描述 html5 form表单里有多个 input type="search"的问题? html5页面 form表单里有多个 input type="search",在手机上浏览,在search框内 输入后,点击键盘右下角的搜索,form表单没有提交.若form表单里只有一个search, 则会提交表单.这类问题主要是什么? 解决方案 把名字去不一样,看行不行 解决方案二: <input type="search" name="

jQuery代码:jQuery控制表单里的回车键

默认情况下,在表单(form)的输入框(input)里按回车将会提交(submit)表单.这会造成一个问题:当用户在填写表单时不小心按了回车键(特别是输入框含有历史记录时,这种情况经常发生),这时不完整的表单会被提交.我们可以通过Javascript来屏蔽回车键,这样当用户键入回车键,表单就不会被提交,而且我们还可以根据需要执行别的任务,例如把光标移到下一个输入框.这样不但屏蔽了回车键误提交表单,而且还方便了用户,一举两得! jQuery代码如下: <script type="text/j

如何将表单里的单选按钮同时和数据库中的两个表联系

问题描述 <%@LANGUAGE="JAVASCRIPT"CODEPAGE="65001"%><body><tableheight="500"width="550"align="center"background="images/colorline_02.jpg"cellpadding="0"cellspacing="0&quo