表單的提交方式post和get有什麼區別
解決思路:
兩者的區別需要通過提交表單後才看得出來,主要是在資料傳送方式和接收方式上。
具體步驟:
post和get都是表單屬性method的可選值,method的預設值為get,兩者的主要區別在於:
1.在客戶端,get方式在通過url提交資料,提交後在位址列中的位址如圖1.4.3所示。
圖1.4.3 get方式提交表單後的位址列
而post提交後地欄不變,如圖1.4.4所示。
圖1.4.4 post方式提交表單後的位址列不變
2.在伺服器端只能用request.querystring來獲取get方式提交來的資料,用post方式提交的資料只能用request.form來獲取:
<%@language="vbscript"
codepage="936"%>
<
html
>
<
head
>
<
title
> 表單提交方式測試
提交資料:
<
input
name="ostr"
type="text"
>
<
br>
提交方式:
<
select
name="select"
onchange="this.form.method=this.value"
>
<
option
value="post" selected>post
option
>
<
option
value="get"
>get
option
>
select
>
<
br>
<
input
type="submit"
name="submit"
value="提交"
>
form
>
<%
if request("submit")<
>"" then
response.write "通過"&request.servervariables("request_method")&"方式提交的資料為:"
if request.servervariables("request_method")="get" then
response.write request.querystring("ostr")
else
response.write request.form("ostr")
end if
end if
%>
body
>
html
>
特別提示
通過iis執行本例**(用http://localhost/method.asp這種方式來瀏覽,有關iis的安裝和配置,請參考第四部分),輸入所提交的資料,選擇post方式提交,將看到圖1.4.4所示的效果。選擇get方式提交,效果將如圖1.4.3所示。
特別說明
一般來說,盡量避免使用get方式提交表單,因為有可能會導致安全問題。比如說在登陸表單中用get方式,使用者輸入的使用者名稱和密碼將在位址列中暴露無遺。但是在分頁程式中,用get方式就比用post好。本例中用到的表單的屬性解釋(asp部分請參考第四部分):
get把引數新增到action屬性指定的位址中,並以錨方式開啟。
post通過http post處理傳送資料。
表單的提交方式POST和GET
post和get都是表單屬性method的可選值,method的預設值為get,兩者的主要區別在於 1.在客戶端,get方式在通過url提交資料,提交後在位址列中的位址如圖1.4.3所示。圖1.4.3 get方式提交表單後的位址列 而post提交後地欄不變,如圖1.4.4所示。圖1.4.4 post...
表單的提交方式POST和GET
post和get都是表單屬性method的可選值,method的預設值為get,兩者的主要區別在於 1.在客戶端,get方式在通過url提交資料,提交後在位址列中的位址如圖1.4.3所示。圖1.4.3get方式提交表單後的位址列 而post提交後地欄不變,如圖1.4.4所示。圖1.4.4post方式...
表單的提交方式POST和GET的區別
具體區別是 1 伺服器端獲取資料的方式不同。post方式傳遞的資料,必須用request.form 獲取。get方式傳遞的資料,必須用request.querystring 獲取。2 post比get安全性較強。在客戶端,get方式在通過url提交資料,提交後在位址列中的位址如圖所示 而post提交...