Multiple image upload with CodeIgniter

后端 未结 4 1717
走了就别回头了
走了就别回头了 2020-11-27 04:02

I am new user to using code igniter in my project, I am facing one problem while uploading multiple files but the last one only insert to all image three images field.

4条回答
  •  鱼传尺愫
    2020-11-27 04:54

    code of controller.

    public function upload_multiple($field_name,$path){
        $this->load->library('upload');
        $files = $_FILES;
        $cpt = count($_FILES[$field_name]['name']);//count for number of image files
        $image_name =array();
        for($i=0; $i<$cpt; $i++)
        {           
            $_FILES[$field_name]['name']= $files[$field_name]['name'][$i];
            $_FILES[$field_name]['type']= $files[$field_name]['type'][$i];
            $_FILES[$field_name]['tmp_name'] = $files[$field_name]['tmp_name'][$i];
            $_FILES[$field_name]['error']= $files[$field_name]['error'][$i]; 
            $_FILES[$field_name]['size'] = $files[$field_name]['size'][$i];
    
            $this->upload->initialize($this->set_upload_options($path));
             //for initalizing configuration for each image
            $this->upload->do_upload($field_name);  
    
            $data = array('upload_data' => $this->upload->data()); 
            $image_name[]=$data['upload_data']['file_name'];
            //store file name into array
    
        }
        return $image_name;//all images name which is uploaded
    }
    public function set_upload_options($path)
    {   
        $config = array();
        $config['upload_path'] = $path;
        $config['allowed_types'] = '*';
        $config['overwrite']     = FALSE;
    
        return $config;
    }
    

    call function

     $image_name=$this->upload_multiple('profile_image',$path=USER_OTHER);//we get all name of uploaded file in $image_name array.
    

提交回复
热议问题