2012-08-24 48 views
0

我有一個表格有幾個複選框和文本框,其值都通過一個提交按鈕傳遞給另一個url。但是,我現在試圖編寫新的url頁面,但不知道如何訪問這些值。如何訪問前一頁提交按鈕傳遞的值?

<form name="myform" action="result" method = "get"> 

     <fieldset> 
      <input type="checkbox" value="total_money" name="check" onchange="javascript:toggle('money');" /> Filter by Total Money</br> 

       <div id="money" style="display:none" name="option"> 

        <input type="checkbox" value="more" onchange="javascript:toggleLine('money_text');" name="condition"/> <label for="condition" > > </label> 

         <div id = "money_text" style="display:none" > 
          <input type="text" id="money_box" name="money_name" value="lower limit" /> 
         </div></br> 

        <input type="checkbox" value="less" onClick="javascript:toggleLine('money_text1');" name="condition"/> <label for="condition1"> < </label> 

         <div id = "money_text1" style="display:none;" > 
          <input type="text" id="money_box1" name="money_name1" value="upper limit" /> 
         </div> 

       </div> 

      <input type="checkbox" value="employees" name="check" onchange="javascript:toggle('employees');"/> Filter by Employees</br> 

       <div id="employees" style="display:none" name="option"> 

        <input type="checkbox" value="more" onchange="javascript:toggleLine('employees_text');" name="condition"/> <label for="condition" > > </label> 

         <div id = "employees_text" style="display:none" > 
          <input type="text" id="employees_box" name="employees_name" value="lower limit" /> 
         </div></br> 

        <input type="checkbox" value="less" onClick="javascript:toggleLine('employees_text1');" name="condition"/> <label for="condition1"> < </label> 

         <div id = "employees_text1" style="display:none;" > 
          <input type="text" id="employees_box1" name="employees_name1" value="upper limit" /> 
         </div> 
       </div>       
     </fieldset> 
    <input type="submit" value="Submit" /> 
</form>​ 

的URL響應,我得到看起來像這樣(取決於什麼檢查或不/輸入):

url: http://127.0.0.1:8000/crunchApp/result?check=total_money&condition=more&money_name=lower+limit&money_name1=upper+limit&check=employees&employees_name=lower+limit&condition=less&employees_name1=upper+limit 

我需要使用這個標準作爲該搜索數據庫Python方法參數但似乎不知道如何。任何幫助將不勝感激!

+0

可能的重複:http://stackoverflow.com/questions/464040/how-are-post-and-get-variables-handled-in-python – FlavorScape

+1

你在使用Django嗎? CGI?你如何檢索數據?你想用AJAX做這個嗎? – cwallenpoole

回答

0

這可能已經找到了一點搜索。

from bottle import route,request,static_file,template 

@route('/mypage',method="GET") 
def get_mypage(): 
    #return static_file('mypagetopost.html') #you can use either static_file or template 
    return template('mypagetopost.tpl') 
@route('/mypage',method="POST") 
def post_mypage(): 
    money_text=request.forms.get("money_text") #you get the value of the form by getting it by name. 
    #return "Your money_text text was:%s" % money_text 
    return template('yourposttemplate.tpl',yourpostpagevarformoney_text=money_text) #you can pass variables to your template through returning the template, however you cannot do this with static_file 

的調整中需要你的HTML頁面: 地址:action="/mypage" method="post"您提交

http://www.daniweb.com/software-development/python/threads/22312/get-posted-form-data-in-python

python cgi script--->addDo.cgi 

import cgitb; cgitb.enable() 
import cgi 
import sys 
form = cgi.FieldStorage() 

// THIS IS WHERE THE VARIABLE IS READ FROM THE HTTP FORM POST 
photos = form["photolist"] 

i=0 
for photo in photos: 
    i = i + 1 
    finalPhoto = finalPhoto + "," + photo[i] 
+0

抱歉,但我不知道這是什麼意思。這是一個python腳本,但我正在嘗試編寫讀取由另一個html頁面給出的值的html頁面。這段代碼在哪裏去/它做什麼? – Santiago

+0

您正在提交表單嗎?所以你需要獲得POST變量。在帖子的接收端只能使用HTML做任何事情。你說你需要將變量放到Python中來查詢數據庫。那麼,這就是它的作用。 – FlavorScape

0

,你可以在瓶子,如果你想使用類似這樣的事情做到這一點很容易。

還要注意,在使用WSGI服務器瓶在默認情況下,你需要設置靜態文件處理程序(CSS/JS/html靜態),並改變你的相應鏈接。