У меня есть таблица с именем 'session_kriteria' (на английском языке: критерии сеанса), где в таблице есть 3 поля, а именно id_sesi, kode_kriteria (на английском языке: код критерия) и bobot (на английском языке: вес).в начале данные уже заполнены 4, а именно IPK, KTI, PKD, BI со значением по умолчанию 'bobot' = 0.
Тогда у меня есть форма для обновления веса.И форма выглядит следующим образом: введите описание изображения здесь
Например, мы заполняем, как показано ниже: введите описание изображения здесь
Но яобнаружил ошибку, подобную этой: введите описание изображения здесь
И мой код такой (метод обновления):
public function update($id)
{
$row = $this->Sesi_kriteria_model->get_by_id($id);
if ($row) {
$data = array(
'button' => 'Update',
'action' => site_url('sesi_kriteria/update_action'),
'id_sesi' => set_value('id_sesi', $row->id_sesi),
'ambil_data_sesi' => $this->Sesi_kriteria_model->sesi(),
'kode_kriteria' => set_value('kode_kriteria', $row->kode_kriteria),
'ambil_semua' => $this->Sesi_kriteria_model->ambil_semua_bid($id),
'ambil_data_kriteria' => $this->Sesi_kriteria_model->kriteria(),
'bobot' => set_value('bobot', $row->bobot),
);
$this->template->set('title', 'Ubah Bobot Kriteria');
$this->template->load('index', 'contents' , 'sesi_kriteria/sesi_kriteria_update', $data);
} else {
$this->session->set_flashdata('message', 'Record Not Found');
redirect(site_url('sesi_kriteria'));
}
}
И метод действия для обновления такой:
public function update_action()
{
$this->_rules();
if ($this->form_validation->run() == FALSE) {
$this->update($this->input->post('id_sesi', TRUE));
} else {
$sesi_array = $this->input->post('id_sesi', TRUE);
$kriteria_array = $this->input->post('kode_kriteria[]', TRUE);
$bobot_array = $this->input->post('bobot[]', TRUE);
$data=array();
for($i=0; $i<sizeof($sesi_array); $i++){
$dt = array(
'id_sesi' => $this->input->post($sesi_array[$i], TRUE),
'kode_kriteria' => $this->input->post($kriteria_array[$i], TRUE),
'bobot' => $this->input->post($bobot_array[$i], TRUE),
);
$this->db->replace('bobot', $bobot_array);
$this->db->where('id_sesi', $sesi_array);
}
$this->db->update('sesi_kriteria', $data, 'id_sesi');
$this->session->set_flashdata('message', 'Create Record Success');
redirect(site_url('sesi_kriteria'));
}