无法使用 CodeIgniter 上传图像错误显示我的文件名不是数据库中的列

Can't Upload Image Using CodeIgniter Error Showing My Filename not column on database

你好Everone我想问一下为什么我不能上传我的图片到数据库,当我想上传时为什么不显示我的列名而不是我的图片文件名错误是

Error Number: 1054

Unknown column 'Avanza.jpg' in 'field list'

INSERT INTO `upload` (`Avanza`.`jpg`) VALUES ('')

Filename: C:/xampp/htdocs/codeigniter/system/database/DB_driver.php

Line Number: 691

这是我的代码

对于控制器

function file_data(){
      $config['upload_path'] = './uploads';
      $config['allowed_types'] = 'jpg|png|jpeg|gif';
      $config['max_size'] = '2048';  //2MB max
      $config['max_width'] = '4480'; // pixel
      $config['max_height'] = '4480'; // pixel
      $config['file_name'] = $_FILES['fotopost']['name'];

      $this->upload->initialize($config);

        if (!empty($_FILES['fotopost'])) {
            if ( $this->upload->do_upload('fotopost') ) {
                $foto = $this->upload->data();
                $data = $foto['file_name'];
                $this->upload_foto->save_pic($data);
              redirect('');
            }else {
              die("gagal upload");
            }
        }else {
          echo "tidak masuk";
        }
   }

这是我的模特

class Upload_foto extends CI_Model{

    function save_pic($data){

        $this->db->insert('upload',$data);

      }
  }

感谢帮助

您的错误消息告诉您这里出了什么问题。

基本上是这样说 - 我不知道名为 "fluffybunny.jpg" 的列名称(选择的随机文件名)

它期望的是一个列名和一个值。

假设您的 Table图像文件的列名file_name,那么您的 $data 需要是一个数组,例如...

$data['file_name'] = $foto['file_name'];

所以你需要插入的是一个关联数组['field_name' => 'value']

注意:阅读 CodeIgniter 用户指南也需要支付 "Bigtime"。