[英]HTML form with multiple submit options
我正在尝试创建一个用于从MySQL表中删除项目的小型Web应用程序。 它只显示HTML表格中的项目,并为每个项目显示一个按钮[delete]
:
item_1 [delete]
item_2 [delete]
...
item_N [delete]
为此,我通过PHP动态生成表格为HTML表单。 这个表格显然有N
[delete]
按钮。 表单应使用POST方法传输数据。
对于删除,我想将相应项的ID
(MySQL表中的主键)提交给执行的php skript。 所以我介绍了hidden
字段(所有这些字段都有name='ID'
,用于存储相应项目的ID
。
但是,当按下任意[delete]
,似乎总是只提交最后一个ID
(即最后一个ID
隐藏字段的值)。
有没有办法只提交相应项目的ID
字段而不使用多个表格? 或者只用一个提交按钮就可以从多个表单提交数据? 或者我应该选择任何完全不同的方式?
我想在一个单一形式中完成它的一点是,有一些“全局”参数不应放在每个项目旁边,而是整个表格只放置一次。
<input type="submit" name="delete[1]" value="delete">
if (isset($_POST['delete'])) $id=key($_POST['delete']);
它似乎总是提交最后一个ID
它提交了所有这些,但由于名称不以[]
结尾,因此PHP会丢弃所有内容。
有没有办法只提交相应项目的ID字段而不使用多个表格?
不,至少没有一些不幸的JavaScript。 所有(非禁用)隐藏输入(带名称和值)都将成功。 您无法根据与单击的输入元素的接近程度进行限制。
如果我正确理解您的目标,您有两个主要选择。
您可以删除隐藏的字段并将提交按钮命名为:
<input type="submit" name="delete[1]" />
<input type="submit" name="delete[2]" />
<input type="submit" name="delete[3]" />
接着
<?php
if (isset($_POST['delete'])) {
$toDeleteId = key($_POST['delete']);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.