如何在CodeIgniter中更新图像

时间:2018-02-23 11:14:30

标签: php codeigniter-3 crud

我是codeigniter的新手。     我在这个项目中使用codeigniter。     我还没有得到如何更新数据库中的图像表单数据。     我已插入,显示数据库中的数据已完成。     但我不明白如何更新数据库中的图像。     这是我用来更新现有图像的方法,但我无法做到     更新图像。     我已成功将图像上传到我的数据库中。

public function update($id) {
    $this->form_validation->set_rules('tite', 'title', 'required');
    $this->form_validation->set_rules('slug', 'Slug', 'required');    
    if ($this->form_validation->run() === FALSE) {
        $data['category'] = $this->category_model->all();
        $this->load->view('backend/templates/header');
        $this->load->view('backend/templates/navigation');
        $this->load->view('backend/pages/edit', $data);
        $this->load->view('backend/templates/footer');  
    } else {
        if (!empty($_FILES['userfile']['name'])) {              
            // upload featured image
            $config['upload_path'] = './uploads/page';
            $config['allowed_types']    = 'gif|jpg|jpeg|png';
            $config['max_size'] = '2048';
            $config['max_width'] = '1080';
            $config['max_height'] = '768';
            $this->load->library('upload', $config);                
            if ( ! $this->upload->do_upload('userfile')) {
                $data['page'] = $this->page_model->find($id);
                $data['category'] = $this->category_model->all();
                $data['error'] = $this->upload->display_errors();
                $this->load->view('backend/templates/header');
                $this->load->view('backend/templates/navigation');
                $this->load->view('backend/pages/edit', $data);
                $this->load->view('backend/templates/footer');
            } else {
                $data = array('upload_data' => $this->upload->data());
                $featured_img = $_FILES['userfile']['name'];
                var_dump($data);
                var_dump($featured_img);
            }
        } else {

            $this->page_model->update($featured_img, $id);
            redirect('backend/page', 'refresh');    
        }    
    }
}

这是我用来更新现有图像但我无法更新图像的方法。     这是我发送数据的模型。     我已成功将图像上传到我的数据库中。

public function update($featured_img, $id) {
    $data = array(
        'title' => ucwords($this->input->post('title')),
        'slug' => strtolower($this->input->post('slug')),
        'content' => $this->input->post('content'),
        'featured_img' => $featured_img,
        'category_id' => $this->input->post('category_id')
    );
    $this->db->where('id', $id);
    return $this->db->update('pages', $data);
}

0 个答案:

没有答案