ASP 表單



Request.QueryString 和 Request.Form 指令用於從表單取回訊息,例如使用者的輸入。


tryitimg.gif

試試看- 實例

使用method="get" 的表單
本範例示範如何使用Request.QueryString 指令與用戶進行互動。

使用 method="post" 的表單
本範例示範如何使用 Request.Form 指令與使用者互動。

使用單選按鈕的表單
本範例示範如何使用 Request.Form 指令透過單選按鈕與使用者互動。


使用者輸入

Request 物件可用來從表單取回使用者資訊。

HTML 表單實例

<form method="get" action="simpleform.asp">
First Name: <input type="text" name ="fname"><br>
Last Name: <input type="text" name="lname"><br><br>
<input type="submit" value="Submit">
</form>

使用者輸入可透過Request.QueryString 或Request.Form 指令取回。


Request.QueryString

Request.QueryString 指令用於收集使用 method="get" 的表單中的值。

使用 GET 方法從表單傳送的訊息對所有的使用者都是可見的(出現在瀏覽器的網址列),並且對所傳送訊息的量也有限制。

如果使用者在上面的HTML 表單中輸入"Bill" 和"Gates",發送至伺服器的URL 會類似這樣:

http://www.w3cschool.cc /simpleform.asp?fname=Bill&lname=Gates

假設"simpleform.asp" 檔案包含下面的ASP 腳本:

<body>
Welcome
<%
response.write(request.querystring("fname"))
response.write(" " & request.querystring("lname"))
%>
< ;/body>

瀏覽器會顯示文件的body 部分如下:

Welcome Bill Gates


####################### #Request.Form######Request.Form 指令用於收集使用method="post" 的表單中的值。 ######使用 POST 方法從表單傳送的訊息對使用者是不可見的,並且對所發送訊息的量沒有限制。 ######如果使用者在上面的HTML 表單中輸入"Bill" 和"Gates",發送至伺服器的URL 會類似這樣:#########http://www.w3cschool.cc /simpleform.asp######

假設"simpleform.asp" 檔案包含下面的ASP 腳本:

<body>
Welcome
<%
response.write(request.form( "fname"))
response.write(" " & request.form("lname"))
%>
</body>

瀏覽器將顯示文件的body 部分如下:

Welcome Bill Gates


表單驗證

#只要有可能,就盡量在瀏覽器上對使用者的輸入進行驗證(透過客戶端腳本)。瀏覽器的驗證速度更快,並且可以減少伺服器的負載。

如果使用者輸入會儲存到資料庫中,那麼您應該考慮使用伺服器端驗證。有一種在伺服器端驗證表單的好方法,就是將(驗證過的)表單傳回表單頁面,而不是轉至不同的頁面。使用者隨後就可以在同一個頁面中得到錯誤的訊息。這樣做更容易用戶發現錯誤。


#