Codeigniter — Фатальная ошибка

#php #codeigniter #upload

#php #codeigniter #загрузка

Вопрос:

У меня есть эта ошибка, Fatal error: Call to undefined method CI_Input::file() in D:xampphtdocsapplicationcontrollerspage.php on line 219 и я использую несколько загрузок с помощью jQuery и Code Igniter и расширенного ввода для файлов

Это мой код:

 if($this->input->file('userfile')){ //This is line 219
    $config['upload_path'] = './uploads/'; 
    $config['allowed_types'] = 'gif|jpg|png'; 
    $config['max_size']    = '1000'; 
    $config['max_width']  = '1024';
    $config['max_height']  = '768';

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

    $files = $this->multi_upload->go_upload();
    //var_dump($files);
    if ( ! $files )
    {
        $error = $this->upload->display_errors();                           
        echo $error;
        return false;
    }
    else
    {
        $data3 = array();
        foreach ($files as $idx => $name) {
            //var_dump($name['name']);
            $data3[] = array(
                'relation' => $id_residence,
                'images' => $name['name'],
            );
        };
        $data333 = $this->db->insert_batch('hotel_image', $data3);
    }
}
  

Комментарии:

1. Какая из этих строк является «строкой 219»?

2. глупый вопрос: вы form уже загрузили библиотеку? $this->load->helper('form');

3. @Ghazanfar — да, я загрузил url .

4. form извините, я обновил свой вопрос.

5. @Ghazanfar — да, $autoload['helper'] = array('form', 'url') в config/autoload.php

Ответ №1:

Вместо isset()

попробуйте:

 $myInput = $this->input->file('userfile');
if(!empty($myInput)){
    ...
    ...
}
  

Комментарии:

1. Только что проверил, вы можете взглянуть на загрузку файла CodeIgniter: [ссылка] ( codeigniter.com/user_guide/libraries/file_uploading.html ) [ссылка]