我这里有一个简单的页面,标题为login.py,因为它最终将成为一个功能登录页面。但是,现在我已经设置了尝试从提交的表单中获取POST变量。这是我到目前为止的代码:
from mod_python import apache, Session, util
from time import time
import webout
def index(req):
form = util.FieldStorage(req)
testval = form.getfirst("test")
return webout.htmlout("", """
<form name="login" action="login.py" method="post">
<h2>%s</h2>
<p>Enter something:</p><input type="text" name="test">
<input type="submit" value="Submit">
</form>
""" % testval)
Webout是我写的一个模块,基本上它只是返回一个格式正确的HTML输出,所以我不必一直输出它,调用htmlout我传递的是头部和身体的内容。
无论如何,如果我要更改表单的方法来获取,h2会正确显示我在表单中的文本框中提交的内容。但是,如果我将其更改为post,我会得到None(所以我假设为null)。我还需要做什么才能引用POST变量?
答案 0 :(得分:0)
我已经想出了一种方法,虽然我不确定这是否是最好的方法。修改后的代码如下:
from mod_python import apache, Session, util
from time import time
import webout
def index(req, test=""):
form = util.FieldStorage(req)
#testval = form.getfirst("test")
return webout.htmlout("", """
<form name="login" action="login.py" method="post">
<p>%s</p><br/>
<p>Enter something:</p><input type="text" name="test">
<input type="submit" value="Submit">
</form>
""" % test)
基本上,POST将变量传递给索引方法。如果您不是来自表单提交,请分配默认值。这适用于POST和GET。