8

我在用python开发的网页上有问题。

我在表单中有几个字段(复选框、文本区域等),每个字段都有一些唯一的名称。

我可以保存已知字段的值

IE

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'), ...

那么,如何将这些字段名称和值一一放入变量中?

4

1 回答 1

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>"        

干杯,

于 2013-11-08T16:05:32.763 回答