使用PHP和CodeIgniter在数据库中批量插入有限的值,而不是完全插入数据



我想在数据库中插入多条记录,并尝试使用插入批处理,不幸的是,它插入了2个值,但没有插入完整的数据集。

这是我的观点,我把我的输入标签作为一个数组

<?php foreach($subjects as $subject): ?>
<input type="hidden" name="studentID[]" value="<?php echo $subject['studentID']; ?>" />
<input type="hidden" name="school[]" value="<?php echo $subject['school']; ?>" />
<input type="hidden" name="major[]" value="<?php echo $subject['major']; ?>" />
<?php endforeach; ?> 

在我的控制器中,我只是调用模型,并在点击表单后重定向页面

public function insertSubjects()
{   
$data['subjects'] = $this->gradeaction_model->insertGrades();
redirect('/');        
}

在模型中,首先我用数组识别了所有的输入标签,并创建了一个名为$value的数组,并进行了for循环。之后,我尝试使用插入批次插入它。结果是,它只添加了2个值,但没有添加所有完整的数据。如何添加我想要插入的完整数据集?

public function insertGrades(){
$studentID = $this->input->post('studentID[]');
$school = $this->input->post('school[]');
$major = $this->input->post('major[]');
$value = array();
for($i = 0; $i < count($studentID); $i++) {
$value[$i] = array(
'studentID' => $studentID[$i],
'school' => $school[$i],
'major' => $major[$i],
);
}
$this->db->insert_batch('tbl_tt_academicsubinfo_college', $value);
}

查看的代码:

<?php foreach($subjects as $subject): ?>
<input type="hidden" name="studentID[]" value="<?php echo $subject['studentID']; ?>" />
<input type="hidden" name="school[]" value="<?php echo $subject['school']; ?>" />
<input type="hidden" name="major[]" value="<?php echo $subject['major']; ?>" />
<?php endforeach; ?> 

型号代码:

public function insertGrades(){
$studentID = $this->input->post('studentID');
$school = $this->input->post('school');
$major = $this->input->post('major');
$value = array();
for($i = 0; $i < count($studentID); $i++) {
$value[$i] = array(
'studentID' => $studentID[$i],
'school' => $school[$i],
'major' => $major[$i],
);
}
$this->db->insert_batch('tbl_tt_academicsubinfo_college', $value);
}

相关内容

  • 没有找到相关文章

最新更新