如何在codeigniter中将上传图像名称插入数据库

时间:2017-05-09 08:00:02

标签: php codeigniter

我的图片上传到相应的文件夹,我尝试将其名称保存到数据库,但仍然可以发生错误

public function add_posts() {

                $this->load->helper('form');
                $this->load->library('form_validation');
                $this->form_validation->set_rules('title','Title','required');
                if($this->form_validation->run() === FALSE) {
                     $this->load->view('posts/add');
                }
                else {
                    $this->load->model('Posts_Model');
                    $data = array(
                        'title' => $this->input->post('title'),
                        'body' => $this->input->post('body'),
                        'cover' => $this->input->post('cover'));
                        //---image upload ---//
                        $config['upload_path']          = './uploads/';
                        $config['allowed_types']        = 'gif|jpg|png';

                        $this->load->library('upload', $config);
                        if ( ! $this->upload->do_upload('cover')) {
                            $error = array('error' => $this->upload->display_errors());
                            $this->load->view('posts/add', $error);
                        } else {
                            $data =  $this->upload->data();
                            $cover = $data['file_name'];
                            $data['cover'] = $cover;
                        }

                        //---End image upload---//
                    $this->Posts_Model->insert($data);

                    $query = $this->db->get("posts");
                    $data['records'] = $query->result();
                    $this->load->view('posts/index',$data);
                }

            }

这是我的控制器中的功能,只有图像名称(封面)不能分别插入数据库和其他工作。 发生数据库错误

  

发生数据库错误

     

错误号码:1054

     

'字段列表'中的未知列'file_name'

INSERT INTO `posts` (`file_name`, `file_type`, `file_path`, `full_path`, `raw_name`, `orig_name`, `client_name`, `file_ext`, `file_size`, `is_image`, `image_width`, `image_height`, `image_type`, `image_size_str`, `cover`) VALUES ('la.jpg', 'image/jpeg', '/vagrant/uploads/', '/vagrant/uploads/la.jpg', 'la', 'la.jpg', 'la.jpg', '.jpg', 22.38, 1, 1200, 700, 'jpeg', 'width=\"1200\" height=\"700\"', 'la.jpg')

文件名:models / Posts_Model.php

行号:8

1 个答案:

答案 0 :(得分:0)

仔细检查您的表格'发布',并查看表格中是否存在file_name字段,