ASP 表單
Request.QueryString 和 Request.Form 指令用於從表單取回訊息,例如使用者的輸入。
試試看- 實例
使用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>
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>
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>
Welcome
<%
response.write(request.form( "fname"))
response.write(" " & request.form("lname"))
%>
</body>
瀏覽器將顯示文件的body 部分如下:
Welcome Bill Gates
表單驗證
#只要有可能,就盡量在瀏覽器上對使用者的輸入進行驗證(透過客戶端腳本)。瀏覽器的驗證速度更快,並且可以減少伺服器的負載。
如果使用者輸入會儲存到資料庫中,那麼您應該考慮使用伺服器端驗證。有一種在伺服器端驗證表單的好方法,就是將(驗證過的)表單傳回表單頁面,而不是轉至不同的頁面。使用者隨後就可以在同一個頁面中得到錯誤的訊息。這樣做更容易用戶發現錯誤。