Я пытаюсь редактировать оценки учеников. как изображение ниже. Каждый раз, когда я добавляю оценки для редактирования, мой l oop обновляет все оценки только последней оценкой в форме, найденной под изображением формы, моим кодом и результатом SQL, когда данные редактируются.
Ниже приведен код моего контроллера.
$fetch_session = $this->Home_model->SemesterSession();
$session = $fetch_session[0]->session;
$semester = $fetch_session[0]->semester;
// Form data
$unit = array();
$score = array();
$course = array();
$matno = $this->input->post('matno22');
$dept = $this->input->post('department22');
$level = $this->input->post('level22');
$score1 = $this->input->post('score');
$course1 = $this->input->post('c_code');
$unit1 = $this->input->post('unit');
// for each
for ($i=0;$i<count($course1);$i++) {
$data['score'] = $score1[$i]; //1
$data['unit'] = $unit1[$i];
$data['matno'] = $matno;
$data['level'] = $level;
$data['dept'] = $dept;
$data['course'] = $course1[$i];
$data['semester'] = $semester;
$data['session'] = $session;
if ($data['score'] >=69) {
$data['grade'] = 'A'; //2
$data['remark'] = 'Excellent'; //5
$data['grade_point'] = '5'; //3
$data['quality_p'] = $data['unit'] * $data['grade_point']; //4
} elseif ($data['score'] >= 59) {
$data['grade'] = 'B';
$data['remark'] = 'Very Good';
$data['grade_point'] = '4';
$data['quality_p'] = $data['unit'] * $data['grade_point'];
} elseif ($data['score'] >=49) {
$data['grade'] = 'C';
$data['remark'] = 'Good';
$data['grade_point'] = '3';
$data['quality_p'] = $data['unit'] * $data['grade_point'];
} elseif ($data['score'] >=44) {
$data['grade'] = 'D';
$data['remark'] = 'Fair';
$data['grade_point'] = '2';
$data['quality_p'] = $data['unit'] * $data['grade_point'];
} elseif ($data['score'] >=39) {
$data['grade'] = 'E';
$data['remark'] = 'Poor';
$data['grade_point'] = '1';
$data['quality_p'] = $data['unit'] * $data['grade_point'];
} else {
$data['grade'] = 'F';
$data['remark'] = 'Fail';
$data['grade_point'] = '0';
$data['quality_p'] = $data['unit'] * $data['grade_point'];
}
// Edit The Scores
$query = $this->Home_model->EditResult($data);
if ($query == true) {
$response['Error'] = 'false';
$response['Message'] = 'Result Successfully Modified';
} else {
$response['Error'] = 'true';
$response['Message'] = 'Error Modifying Result';
}
}
echo json_encode($response);
}
вот моя модель
public function EditResult($data) {
$condition = "matno = " . "'" . $data['matno'] . "' AND " . "course =" . "'" . $data['course'] . "' AND " . "semester =" . "'" . $data['semester'] . "' AND " . "session =" . "'" . $data['session'] . "'";
$this->db->where($condition);
$this->db->update('result', $data);
}
Наконец, это то, что происходит в моей таблице БД, когда я обновляю оценки