为了账号安全,请及时绑定邮箱和手机立即绑定

你如何在代码点火器中将图像上传到数据库中?

你如何在代码点火器中将图像上传到数据库中?

PHP
暮色呼如 2021-10-08 21:19:09
我一直在尝试将图像上传到我的数据库(注意:我使用的是 Codeigniter 3)但是每次我尝试将图像上传到数据库时,它都不会存储它的文件名和图像本身,并且只存储 1 位在 BLOB var 类型中。$photo = file_get_contents($_FILES['image']['tmp_name];this->db->select('*')[...]if(empty($response){   $data['entry_phone_no'] = $this->input->post('phone_no');   $data['entry_email'] = $this->input->post('email');   $data['entry_firstname'] = $this->input->post('first_name');   $data['entry_lastname'] = $this->input->post('last_name');   $data['entry_photo'] = $photo;   $data['entry_photo_name'] = $photo;在我的 model.php 中,我有上面的设置,它保存了其他数据(电话号码、电子邮件等)。我知道我在这"$photo"部分遗漏了一些代码,但有人可以指出吗?
查看完整描述

1 回答

?
慕村9548890

TA贡献1884条经验 获得超4个赞

您可以将图像上传到名为“Uploads”的文件夹中,并将该文件名保存到数据库中,如下所示:


视图.php:


<input class="my-set_3" type="file" name="chatbot_profile" id="chatbot_profile" required>

控制器.php:


if (!empty($_FILES['chatbot_profile']['name']))

{


  $config['upload_path']          = './uploads';

  $config['allowed_types']        = 'gif|jpg|png';

  $config['max_size']             = 1000000;

  $config['file_name']           =  time();

  $this->load->library('upload', $config);

  if ( ! $this->upload->do_upload('chatbot_profile'))

  {

      $error = array('error' => $this->upload->display_errors());

  }

  else

  {

      $data = array('upload_data' => $this->upload->data());

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

      // Store this filename into database

      // Your database code will be placed here

      // OR call model  mathod from here

  }

}

注意:uploads 文件夹将由我们在应用程序文件夹之外创建


查看完整回答
反对 回复 2021-10-08
  • 1 回答
  • 0 关注
  • 128 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信