猿问

PHP 代码点火器

我正在使用 Codeigniter。我的表单有多行,每行具有相同的字段名称。您能帮助我如何通过循环将其保存在数据库中吗?我收到错误

错误号:1048 列“sn_unit”不能为空

请看下面的代码。预先感谢您的帮助。

这是视图

<?php 

for ($i = 1; $i <= $number_to_check; $i++) {

?>

<hr>

<div class="row">

   <div class="col-xl-4">

       <div class="mb-3">

          <label class="form-label"><strong><?php echo $i;?></strong></label>

          <input type="text" class="form-control" name="sn_unit[]" placeholder="Unit Serial Number" required>

       </div>

    </div>

</div>

<?php 

}

?>

这是控制器


for ($i = 1; $i <= count($this->input->post('sn_unit')); $i++) {


   $sn_unit = $this->input->post('sn_unit[$i]');

              

   $chk = $this->auth->saveItemReport();

}


眼眸繁星
浏览 65回答 1
1回答

蛊毒传说

您可以简单地使用 foreach 循环遍历所有值。foreach($this->input->post('sn_unit') as $key => $value){&nbsp;&nbsp; &nbsp;$sn_unit = $value;&nbsp; &nbsp;$chk = $this->auth->saveItemReport();&nbsp;}如果您仍然喜欢使用 for 循环;永远记住数组从 0 索引开始,所以:$units = $this->input->post('sn_unit');for ($i = 0; $i < count($units); $i++) {&nbsp; &nbsp;$sn_unit = $units[$i];&nbsp; &nbsp;&nbsp; &nbsp;$chk = $this->auth->saveItemReport();}
随时随地看视频慕课网APP
我要回答