如果未勾选复选框,则从表中删除

时间:2013-12-05 10:22:54

标签: php mysql checkbox

这可能很容易,但我被困住了。我有一个带有复选框的表单,显示员工和技能,这些表格取自具有多对多关系的表格。 以下代码用于更新记录,但如果未选中复选框,我不确定如何删除记录

$emp=$_POST['emp'];  

if(isset($_POST['chk1'])){
    $checkbox=$_POST['chk1'];
    $arr_num=count($checkbox);
    $i=0;

    while ($i < $arr_num)
    {
        $qry = "INSERT IGNORE INTO skillsets (skill_id, empr_id )VALUES(?, ?)";
        $stmt = $mysqli->prepare($qry);
        $stmt->bind_param('ii', $checkbox[$i], $emp);
        $stmt->execute();
        $i++;
    }
}
 else .... delete from .....

我不确定else的语法,有人可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

您可以为每个复选框(在它之前)定义具有相同名称的隐藏输入。例如

<input type="hidden" name="items[1]" value="no" />
<input type="checkbox" name="items[1]" value="yes" />

1是您的商品ID。 现在,如果选中复选框,则会发送其值。在其他情况下,隐藏字段的值将发送到您的服务器。使用此数据,您可以遍历items数组,从索引获取ID并检查值以了解是否已检查。