代码之家  ›  专栏  ›  技术社区  ›  phimuemue

具有多个提交选项的HTML表单

  •  2
  • phimuemue  · 技术社区  · 16 年前

    我正在尝试创建一个小的web应用程序,用于从MySQL表中删除项。它只显示HTML表中的项目,并为每个项目显示一个按钮 [delete] :

    item_1 [delete]
    item_2 [delete]
    ...
    item_N [delete]
    

    N

    对于删除我想提交 ID hidden 字段(所有这些字段都具有 name='ID' 那家商店 对应项的。

    [删除] (即最后一个 身份证件 隐藏字段)。

    有没有什么办法只提交 身份证件

    我之所以只想用一种形式来做这件事,是因为有一些“全局”参数不应该放在每个项目的旁边,而应该放在整个表中一次。

    3 回复  |  直到 16 年前
        1
  •  5
  •   Your Common Sense    16 年前
    <input type="submit" name="delete[1]" value="delete">
    
    if (isset($_POST['delete'])) $id=key($_POST['delete']);
    
        2
  •  3
  •   Quentin    16 年前

    它似乎总是提交最后一个ID

    它提交了所有的名字,但是因为名字不是以 [] ,PHP按最后一个丢弃所有。

    如果我正确理解你的目标,你有两个主要的选择。

    1. Encode the id value into the name of the submit button
        3
  •  1
  •   Tom Haigh    16 年前

    您可以去掉隐藏字段,并将提交按钮命名为:

    <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']);
    }
    
    推荐文章