使用foreach循环php更新 if(isset($\u POST['Active'])和&isset($\u POST['Box']){ $status=$_POST['activation']; foreach($\u POST['Box']作为$remove\u ch){ $sqlupd=“更新预注册集状态='$Status',其中复选框\u Id='$remove\u ch'; $resultupdate=mysqli_query($database,$sqlupd)或die(mysqli_error($database)); 如果($resultupdate){ 回声“; } } }

使用foreach循环php更新 if(isset($\u POST['Active'])和&isset($\u POST['Box']){ $status=$_POST['activation']; foreach($\u POST['Box']作为$remove\u ch){ $sqlupd=“更新预注册集状态='$Status',其中复选框\u Id='$remove\u ch'; $resultupdate=mysqli_query($database,$sqlupd)或die(mysqli_error($database)); 如果($resultupdate){ 回声“; } } },php,foreach,Php,Foreach,从这段代码中,我需要使用复选框更新状态,但它只更新我拥有的最后一行,然后它允许我使用第一行的相同选项更新其余行,考虑到状态是选项列表。您能告诉我出了什么问题吗?首先,请小心,您可能会暴露于SQL注入。连接字符串不是最佳选项,请尝试运行参数化查询 第二,标签是什么样子的? 一个常见的错误是在字段后忘记“[]”。例如: if(isset($_POST['Active']) && isset($_POST['Box'])){ $status= $_POST['activat

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

首先,请小心,您可能会暴露于SQL注入。连接字符串不是最佳选项,请尝试运行参数化查询

第二,标签是什么样子的? 一个常见的错误是在字段后忘记“[]”。例如:

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\">";
        }

    }

}  


第三,
echo”“
应该在foreach循环之外。

首先,请小心,您可能会暴露于SQL注入。连接字符串不是最佳选项,请尝试运行参数化查询

第二,标签是什么样子的? 一个常见的错误是在字段后忘记“[]”。例如:

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\">";
        }

    }

}  


第三,
echo”“
可能应该在foreach循环之外。

使用
标题来代替
meta
。您可以在循环之外设置状态。是否只有一个状态字段?您可以在
中使用一个
,一次更新所有记录。如果您对SQL注入开放,请参数化查询。您是否有
活动
激活
输入?我有活动和非活动选项。“Active”是按钮,“Activation”是选项的名称。您的代码易受SQL注入攻击,您需要解决此问题。如何解决此问题?请使用
标题
代替
。您可以在循环之外设置状态。是否只有一个状态字段?您可以在
中使用一个
,一次更新所有记录。如果您对SQL注入开放,请参数化查询。您是否有
活动
激活
输入?我有活动和非活动选项。“Active”是按钮,“Activation”是选项的名称。您的代码易受SQL注入攻击,您需要修复此问题。如何修复它?参数化查询是什么。?和echo“”?关于SQL注入:通过
echo“”
我指的是您的刷新元标记。如果将其保留在循环中,则$_POST['Box']中的每个项目都会打印一次。参数化查询是什么。?和echo“”?关于SQL注入:通过
echo“”
我指的是您的刷新元标记。如果您将其保留在循环中,则$U POST['Box']中的每个项目都会打印一次。