代码点火器无法更新数据(无错误)

时间:2019-04-04 03:50:40

标签: php codeigniter

我在codeigniter中更新数据时遇到问题。没有错误消息,但是当我更改数据名称并单击提交按钮时,数据无法更新。

我是CI的新手,所以我无法弄清楚我在哪里做错了。你能帮我吗?

先谢谢

我的视图(views / form / form_edit_bank.php)

<form action="<?php echo site_url('bankdatel/updatebank/'.$row_bank['idbank']);?>" method="post">
              <div class="box-body">
                <div class="form-group">
                  <label>Nama Bank: </label>
                  <input type="text" name="namabank" value="<?php echo $row_bank['namabank']?>">
                </div>
              </div>

              <div class="box-footer">
                <button type="submit" class="btn btn-primary">Ubah</button>
              </div>
            </form>

控制器(controllers / bankdatel.php)

public function editbank(){

        $this->load->model('model_bankdatel');
        $data['row_bank'] = $this->model_bankdatel->selectbank($this->uri->segment(2));

        $this->load->view('template/header');
        $this->load->view('form/form_edit_bank', $data);
        $this->load->view('template/footer');
    }


    public function updatebank(){

        $arrdata = array(
                'namabank' => $this->input->post('namabank')
            );

        $this->load->model('model_bankdatel');
        $this->model_bankdatel->updatebank($arrdata, $this->uri->segment(3));
        $this->session->set_flashdata('berkas', "<script>alert('Nama Bank Berhasil Diubah');</script>");
        redirect('bankdatel');
    }   

模型(model / model_bankdatel.php)

public function updatebank($data, $id){
        $this->db->where('idbank', $id);
        $this->db->update('mt_bank', $data);
    }

    public function selectbank($id)
    {
        $this->db->where('idbank', $id);
        return $this->db->get('mt_bank')->row(); 
    }

1 个答案:

答案 0 :(得分:0)

您的表单URL为site_url('bankdatel/updatebank/'.$row_bank['idbank'])。这意味着有1个参数正在传递给函数。所以像这样$bankid

public function updatebank($bankid){

    $arrdata = array(
            'namabank' => $this->input->post('namabank')
        );

    $this->load->model('model_bankdatel');
    $this->model_bankdatel->updatebank($arrdata, $bankid);
    $this->session->set_flashdata('berkas', "<script>alert('Nama Bank Berhasil Diubah');</script>");
    redirect('bankdatel');
}

并在模型中的更新查询中使用return

return $this->db->update('mt_bank', $data);