python cgi.FieldStorage.getvalue()不返回POSTed表单元素的值

时间:2013-02-19 10:30:16

标签: python forms http cgi

使用

import cgi
form = cgi.FieldStorage()
email = form.getvalue('email', 0)

通过GET发送表单值但不通过POST发送时工作,即0被分配给email

我做错了什么?

编辑:添加html

<!DOCTYPE html>
<html><head><title>login</title></head>
<body>
<form action="cgi.py" method="post">
<input type="text" name="email"/>
<input type="submit"/>
</form>
</body>
</html>

2 个答案:

答案 0 :(得分:0)

找到它。我使用的另一个模块也称为cgi.FieldStorage()。由于这将POST数据作为文件流读取,因此它只会一次读取表单数据。 GET不是作为流读取的。在这种情况下,首先调用另一个模块并在上面的代码有机会查看之前提取表单数据。

答案 1 :(得分:-1)

根据您发布的HTML,您似乎忘了以下内容:

<input type="text" name="email"/>