复选框列表的多个操作

Multiple actions for checkbox list

我有一个包含多个项目的列表,每行都有一个复选框(就像电子邮件的 gmail 列表)。

用户选中复选框,然后按下操作按钮对所选项目执行某些操作(例如删除)。然后选择的项目列表将被发送到php文件进行后台处理。

但是对选中的复选框执行多项操作的解决方案是什么(例如,在 gmail 中,我们会删除、标记为垃圾邮件、标记为 read/unread 等)。

这是我的资料:

我会给复选框起一个名称,在 post 表单之后生成一个 php 项目数组。 例如,name="item[]"

当表单被 post 编辑后,您可以使用

遍历数组中的项目
foreach($_POST['item'] as $item) {
    /* do action */
}

每个动作使用不同的"submit buttons"。给出相同的名称但不同的值。然后检查它到后端

例如,

HTML

<form action="backend.php" method="post" >
    <input type="submit" name="action" value="Delete" />
    <input type="submit" name="action" value="Move" />
    <input type="submit" name="action" value="Copy" />

    <input type="checkbox" name="selection[]" value="value 1" >
    <input type="checkbox" name="selection[]" value="value 2" >
    <input type="checkbox" name="selection[]" value="value 3" >
    <input type="checkbox" name="selection[]" value="value 4" >
    <input type="checkbox" name="selection[]" value="value 5" >
</form>

PHP

..................
..................

if($_POST['action'] == "Delete")
    .......
else if($_POST['action'] == "Move")
    .......
else if($_POST['action'] == "Copy")
    .......