【发布时间】:2017-09-16 11:02:06
【问题描述】:
我正在尝试上传根文件夹中的图像及其在数据库中的文件名。这是我为上传功能所做的:
public function add_blog($id=0){
if(!empty($_FILES['picture']['name'])){
$config['upload_path'] = 'uploads/blog_image';
$config['allowed_types'] = 'jpg|jpeg|png|gif';
$config['file_name'] = $_FILES['picture']['name'];
//Load upload library and initialize configuration
$this->load->library('upload',$config);
$this->upload->initialize($config);
// print_r($value['name'][$s]);exit;
if($this->upload->do_upload('picture')){
$uploadData = $this->upload->data();
$picture = $uploadData['file_name'];
print_r($picture); exit;
}
}
print_r($config['file_name']); exit;
$data['blog_data']=array('blog_post'=>$this->input->post('blog_post'),
'posted_by'=>$this->input->post('posted_by'),
'blog_image'=>$picture);
if ($id==0){
$this->db->insert('blog',$data['blog_data']);
// $last_id = $this->db->insert_id();
}
else {
$this->db->where('id',$id);
// $last_id = $this->db->insert_id();
$this->db->update('blog',$data['blog_data']);
}
}
这里的问题是我能够插入除图像之外的其他数据。如果我执行 print_r() 并退出,我会得到带有 print_r($config[file_name]) 的图像名称,否则它只会插入除图像之外的其他数据。但是图像既没有上传到根文件夹,也没有上传到数据库中。如果我给出不存在的上传路径,那么它也不会引发任何错误。我认为 If 里面的代码没有被执行。我该如何解决这个问题?提前致谢。
【问题讨论】:
标签: codeigniter image-uploading