使用foreach循环php更新

时间:2017-05-21 17:49:07

标签: php foreach

if(isset($_POST['Active']) && isset($_POST['Box'])){ 

    $status= $_POST['activation'];

    foreach($_POST['Box'] as $remove_ch){


        $sqlupd= "update Pre_Enrollment set Status='$status' where Checkbox_Id='$remove_ch'";
        $resultupdate = mysqli_query($database,$sqlupd) or die (mysqli_error($database));

        if($resultupdate){
            echo "<meta http-equiv=refresh content=\"0; URL=../Admin/admin pre-enrollment.php\">";
        }

    }

}  

从这段代码中,我需要使用复选框更新状态,但它只更新了我的最后一行,然后它允许我使用相同的第一行更新其余的,考虑到状态是选项列表。你能告诉我出了什么问题吗?

1 个答案:

答案 0 :(得分:0)

首先,请注意,您可能会接触到SQL注入。连接字符串不是最佳选择,请尝试运行参数化查询。

其次,标签是怎样的? 一个常见的错误是在场后忘记“[]”。一个例子:

<input type="checkbox" name="Box[]" value="{ID}">

第三,echo "<meta..>"应该在foreach循环之外。