在mod_python中获取POST变量

时间:2012-10-17 17:17:12

标签: mod-python

我这里有一个简单的页面,标题为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变量?

1 个答案:

答案 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。