如何在Python中获取表单字段名称和值?

时间:2013-11-08 14:47:58

标签: python

我在网页中遇到问题,用python开发。

我在表单中有几个字段(checkbox,textarea等),每个字段都有一些唯一的名称。

我可以保存已知字段的值

即。

field_name = 'fl_textarea'    
field_value = form.getvalue(field_name)

但是如何才能获得未知字段名称的值?我还需要将字段名称保存到变量中。

当我打印提交表格的内容时

form = cgi.FieldStorage()
print "<p>"+ str(form) +"</p>"

看起来像这样:

FieldStorage(None, None, MiniFieldStorage('flatt2695', 'abc-xyz'), MiniFieldStorage('flatt2696', 'abc-123xyz'), MiniFieldStorage('flatt2697', 'onoff'), ...

那么,我如何将这些字段名称和值逐个变为变量?

1 个答案:

答案 0 :(得分:9)

很好,你已经用精确的方式解释了一切。

由于你已经有了FieldStorage,所以我很容易回答; - )

如果您想获取表单字段的名称,请打印form.keys()

其他部分有点棘手。您可以遍历form.key()并编写自己的逻辑来检索基于键的值。

我在这里编写了一段编译代码,但您可以根据需要自定义代码。

variable = ""
value = ""
r = ""
for key in form.keys():
        variable = str(key)
        value = str(form.getvalue(variable))
        r += "<p>"+ variable +", "+ value +"</p>\n" 

fields = "<p>"+ str(r) +"</p>"        

干杯,