0

希望我能正确解释这一点...

我正在使用 Codeigniter 的表单验证。如果我的表单将字符串 id 返回给控制器,我如何使用它来执行数据库查询并使用结果数组来执行更新...

那有意义吗?

function form($id) {
    if ($this->form_validation->run('') == false) {
        //...
    }
    else {
        // Query database where strId = $this->input->post('strId')
        // Put results into an array called $data
        // Update database where id = $this->input->post('id')

        $this->db->where('id', $this->input->post('id'));
        $this->db->update('database', $data);
    }
}
4

2 回答 2

2

控制器:

    //... (if valid) ...
    $this->load->model('myform'); //loads myform_model.php
    $this->myform->update(); //call the update method

模型(myform_model.php):

    function update(){
        $this->load->database();
        $this->db->where('id', $this->input->post('id'));
        $this->db->update('tableName', $data);
    }

注意:您的 id 必须已经存在于数据库表中,因为您使用的是“更新”。要插入数据,请使用 $this->db->insert();

于 2013-09-18T22:44:26.887 回答
1

很好的代码:

函数更新($id,$data){

    $this->db->where('id', $this->input->post('$id'));
    $this->db->update('tableName', $data);
}

或像这样:

函数更新($id,$data){

    $this->db->where('id', '$id');
    $this->db->update('tableName', $data);
}
于 2014-07-24T06:50:15.817 回答