为了账号安全,请及时绑定邮箱和手机立即绑定

在每个 foreach 中使用多个 foreach 插入只会在每个 foreach 中获取最终值

在每个 foreach 中使用多个 foreach 插入只会在每个 foreach 中获取最终值

PHP
慕森王 2021-07-05 13:53:57
我目前正在研究评估系统。问题是动态创建的/所以我已经尝试从不同的 foreach 输入字段插入值,我使用输入类型文本而不是单选按钮。我的代码只是插入从每个 foreach 循环中获取的最后一个值。 <?php     session_start();    include('connectDB.php');    $userId= $_SESSION['id'];    mysqli_query($conn,"UPDATE student SET evaluationId = 1 WHERE studentId='$userId'");    foreach($_POST['nPersonnelId'] as $personnelId ){        for ($i=0; $i<count($_POST['rCourteous']); $i++){            $rCourteous = $_POST['rCourteous'][$i];        }        for ($i=0; $i<count($_POST['rPrompt']); $i++){            $rPrompt = $_POST['rPrompt'][$i];        }        for ($i=0; $i<count($_POST['rCompetent']); $i++){            $rCompetent = $_POST['rCompetent'][$i];        }        for ($i=0; $i<count($_POST['rAccom']); $i++){            $rAccom = $_POST['rAccom'][$i];        }        mysqli_query($conn,"INSERT INTO qpanswer                (studentId,personnelId,courteous,prompt,competent,accommodating)                 VALUES ('$userId','$personnelId','$rCourteous','$rPrompt','$rCompetent','$rAccom')");    }    header('location:studentDashboard.php');?>
查看完整描述

1 回答

?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

您不需要所有内部循环,只需从外部循环获取索引并将其用于所有内部数组。所以这里$i从foreach关键...


foreach($_POST['nPersonnelId'] as $i => $personnelId ){

    $rCourteous = $_POST['rCourteous'][$i];

其他每个字段都相同。


同样正如所指出的那样 - 使用准备好的语句。


查看完整回答
反对 回复 2021-07-09
  • 1 回答
  • 0 关注
  • 182 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信