2012-02-01 17 views
1

嗨,我有一個窗體並且該操作正在提交到一個名爲autoform.asp的腳本中。在這個腳本,我通常要求字段的值是這樣的:txtFirstName =的Request.Form(「txtFirstname」)從窗體請求字段名稱和值,並在腳本中動態添加它們

現在我想使這個沒有硬編碼在腳本中的請求,其中形式發佈工作動態。

我設法做到這一點代碼動態獲取表單域,但他們不是在飛行中加載。

For Each Item In Request.Form 
    fieldName = Item 
    fieldValue = Request.Form(Item) 
    Response.Write(""& fieldName &" = Request.Form("""& fieldName &""")")  
    Next 

Response.Write不好,因爲它會阻止我的腳本繼續。這就是說顯示的值是正確的。有人能幫助我嗎?也許我需要一個數組?如果是的話我該如何繼續這個過程?感謝

+0

什麼是通過寫入瀏覽器阻止運行的腳本? – 2012-02-01 11:49:43

+0

基本上我希望輸出被加載但不顯示在瀏覽器中。當vbscript加載Response.Write時,結果不會在sciprt的後臺加載,但會在瀏覽器中顯示..... – 2012-02-01 11:55:59

+0

因此您希望將結果存儲在某處?或將其發佈到下一頁? – 2012-02-01 11:58:28

回答

1

編輯按下面的評論

可以使用Execute語句從PHP

For Each Item In Request.Form 
    ItemValue = Request.Form(Item) 
    Execute Item & " = """ & ItemValue & """" 
Next 

模仿import_request_variables如果您打算輸出

名字=的Request.Form(「名字「)

然後使用

<% 
For Each Item In Request.Form 
    fieldName = Item 
    fieldValue = Request.Form(Item) 
    Response.Write(fieldName & " = Request.Form(""" & fieldName & """)") 
Next 
%> 

如果您打算輸出

名字= 「約翰」

然後用

<% 
For Each Item In Request.Form 
    fieldName = Item 
    fieldValue = Request.Form(Item) 
    Response.Write(fieldName & " = """ & fieldValue & """") 
Next 
%> 
+0

感謝您的這一點,但我希望結果只顯示在腳本中,而不是在瀏覽器中,這就是我的問題。當腳本加載Response.Write語句時,腳本將在瀏覽器中顯示結果,並停止在那裏,而不是繼續腳本中的其他代碼。加載這些字段後,用戶應該被帶到一個感謝頁面:/實際上,用戶正在瀏覽器中顯示的值停止。 – 2012-02-01 11:46:05

+0

換句話說,我不想打印字段名稱和值,但我想執行它們。感謝您的幫助 – 2012-02-01 13:07:23

+0

@Rene - 查看更新的答案 – 2012-02-01 13:52:15

0

我想你也許可以使用Execute()些辦法,比如

<%@ language = "VBScript" CodePage = 65001 %> 
<% 
    option explicit 

    dim q 
    for each q in Request.QueryString 
     dim s 
     s = "dim " & q & vbCrLf & _ 
      q & " = """ & Request.QueryString(q) & """" & vbCrLf & _ 
      "Response.Write ""Value of " & q & " is "" & " & q & vbCrLf 
     %> 
      <pre><%= s %></pre> 
      <hr/> 
     <% 
     Execute s 
     %><hr/><% 
    next 
%> 

(我已經使用querystring集合,所以它更容易測試)。所以輸入像

http://.../test-asp.asp?p=1&c=328904

將產生類似

暗淡p
p值= 「1」
回覆於 「P的值是」 & p


p的值是1

尺寸C
C = 「328904」
的Response.Write 「C價值是」 &Ç
值C是328904

這取決於你真正需要做的。

相關問題