Board logo

標題: [教學] (ASP教學第5篇)Request 物件 [打印本頁]

作者: 小誌    時間: 2010-5-10 14:11     標題: (ASP教學第5篇)Request 物件

Request 物件
Request 物件與Response 物件是一對的的,為何如此說呢?因為Response 物件是回應資料給瀏覽器,而Request 物件是讀取瀏覽器的資料,通常包含了使用者端的相關訊息,如瀏覽器的種類、表頭資訊、表單參數及 Cookies....等,Request物件提供下列資料集合。

名稱

說明

Request.Form("變數名")

取得客戶端利用表單所傳送的資料

Request.QueryString ("變數名")

取得附帶在網址後面的參數

Request.Cookies("變數名")

取得存在於客戶端瀏覽器的Cookies資料

Request.ServerVariables("變數名")

取得網頁伺服端的環境變數資訊


本單元將針對 Request.Form("變數名稱") 作介紹,其它部分將 Cookies 物件及 Server 物件單元中介紹。

實做學習
以簡單訪客留言為例 製作一表單,這不是真的留言版喔,我們並沒有將資料記錄到檔案或資料庫中!message.htm)
[attach]197[/attach]

執行結果如下圖:
[attach]198[/attach]

我們剛剛說:按下傳送鈕後會啟動Server端之ASP程式,即原始碼中之action="go.asp" ,那go.asp程式網頁是如何運作的呢?我們現在就來分析一下go.asp程式碼:

[attach]200[/attach]
則執行結果如下圖所示:
[attach]201[/attach]

提示:<%=顯示內容%>是<%response.write "顯示內容"%>的簡便寫法!
若單純只有取得表單之變數名稱,則 Request.Form("變數名稱"), 亦可寫成 Request("變數名稱")。

message.html原始碼
  1. <html>
  2. <body bgcolor="#ffffff">
  3. <form action="go.asp" method="post">
  4. <table border="1">
  5. <tr>
  6. <td>姓名:</td>
  7. <td><input type="text" size="15" name="name"></td>
  8. </tr>
  9. <tr>
  10. <td>Email:</td>
  11. <td><input type="text" size="30" name="email"></td>
  12. </tr>
  13. <tr>
  14. <td>留言:</td>
  15. <td><textarea name="memo" cols=30 rows=3></textarea></td>
  16. </tr>
  17. <tr>   
  18. <td colspan=2><input type=submit value="傳送"></td>
  19. </tr>
  20. </table>
  21. </form>
  22. </body>   
  23. </html>
複製代碼
go.asp原始碼
  1. <%
  2. name=request("name")
  3. email=request("email")
  4. memo=request("memo")
  5. if name=empty or email=empty or memo=empty then
  6.   response.write "姓名或email或留言,任何一欄位不可為空白,請重新輸入"
  7.   response.end
  8. end if
  9. memo=replace(memo,vbcrlf,"<br>")
  10. %>
  11. <html>
  12. <body>
  13. <table border=1>
  14. <tr>
  15. <td>留言者:<%=name%></td><td>Email:<%=email%></td>
  16. </tr>
  17. <tr bgcolor=#ffffcc><td colspan=2><%=memo%></td>
  18. </tr>
  19. </table>
  20. </body>
  21. </html>
複製代碼





歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)