【发布时间】:2015-04-11 12:53:07
【问题描述】:
这是 POST 表单:
<form method ="post" action="New.cgi">
<table>
<tr><td>Select: </td><td><select><option value = "<?php echo substr($_SERVER['REQUEST_URI'], -2)?>">ID</option></select></td></tr><br>
<tr><td>Allow: </td><td><input type ="text" name="Authorize" autofocus required="required"/></td></tr><br>
<br>
</table>
<input type="submit" name = "submitname" value="Add" />
</form>
PHP 用于获取 URI 的最后两个字符 - 在本例中为“tr”。
这是New.cgi 使用 Python:
formData = cgi.FieldStorage()
ID = formData.getvalue('ID')
InputAuthorize = formData.getvalue('Authorize')
print(ID)
print(InputAuthorize)
为“授权”输入的值都会正确打印。
但是,对于“ID”,输出为none。所以,很明显,我的 POST 表单代码出错了,但我不确定它可能是什么。
非常感谢任何帮助!
【问题讨论】:
-
您检查过 POST 有效负载吗?您的
<select>字段没有name=。 -
@mario 你是什么意思?我已经添加了一个名称,它没有任何区别。
-
如果将
id="ID"添加到<option>会怎样? -
@Fred-ii- 这也不会改变任何东西。