Вставка файла CodeIgniter в базу данных, но не в папку - PullRequest
0 голосов
/ 16 октября 2018
public function index(){
    $image = null;//tem var
    $config['upload_path'] = './assets/uploads/';
    $config['allowed_types'] = 'gif|jpg|jpeg|jpe|png';
    $config['max_size']      = '4000000';

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

    $this->form_validation->set_rules('title', 'Album Title', 'required');

    if($this->form_validation->run() == FALSE){
        $data['imagePath'] = base_url().'assets/uploads/';
        $data['album'] = $this->gallery->getAlbum();
        $this->load->view('admin/album', $data);
    }else{
        if (! $this->upload->do_upload('image')){//file upload
            $this->image = null;
        }else{
            $tem = array('upload_data' => $this->upload->data());
            $this->image = $tem["upload_data"]["file_name"];
        }//end else

         $data=array(
            'title' => $this->input->post('title'),
            'featured' => $this->image,
            'created_on' =>  date("Y-m-d")
         );

         if($this->gallery->createAlbum($data)){
            $this->session->set_flashdata('created','Album Has Been Created');
            redirect("admin");
         }
    }   
}

public function viewGallery($album_id){
    $config['upload_path']          = FCPATH.'assets/uploads/';
    $config['allowed_types']        = 'gif|jpg|jpeg|jpe|png';
    $config['max_size']             = 10000;
    $this->load->library('upload', $config);

    $data['imagePath'] = base_url().'assets/uploads/';
    $data['images'] = $this->gallery->getGalleryWithId($album_id);
    $data['album_id'] = $album_id;
    $this->load->view('addGallery', $data);
}

Загружает в базу данных, но не в указанную папку ... Не знаю, что делать дальше ... Любая помощь будет действительно хорошей.Я не знаю, куда поместить путь foldername, куда должен быть загружен файл.Работает только загрузка в базу.

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 16 октября 2018

Попробуйте это.Сначала определите любое имя папки, в которую вы хотите вставить файл.Как и в этом случае, я сделал «title» именем папки на моем конце.

if($this->form_validation->run())     
        {  
            $title=$this->input->post('title');

            $config['upload_path']          = './assets/courses/'.$title;
            $config['allowed_types']        = 'gif|jpg|png|jpeg';
            $config['max_size']             = 1000;
            $config['max_width']            = 500;
            $config['max_height']           = 300;
            $this->load->library('upload', $config);
            if (!is_dir('./assets/courses/'.$title)) {
             mkdir('./assets/courses/'.$title, 0777, TRUE);
         }

Надеюсь, что это поможет Вам.

0 голосов
/ 16 октября 2018

Попробуйте добавить FCPATH

$config['upload_path'] = FCPATH.'/assets/uploads/';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...