Функция загрузки файла уже существует в codingniter - PullRequest
0 голосов
/ 06 июля 2018

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

Вот мой код контроллера:

if($this->input->post('userSubmit'))
{
    //echo "comm";
    if(!empty($_FILES['file_upload']['name']))
    {
        // echo "coming";
        $config['upload_path'] = 'uploads/';
        $config['allowed_types'] = 'doc|docx|pdf';
        $config['file_name'] = $_FILES['file_upload']['name'];
        $this->load->library('upload',$config);
        $this->upload->initialize($config);
        if($this->upload->do_upload('file_upload'))
        {
            //echo "cominggggggg";die;
            $uploadData = $this->upload->data();
            $picture = $uploadData['file_name'];
            //print_r($picture);die;
        }
        else
        {
            $picture = '';
        }
    }
    else
    {
        $picture = '';
    }
}

1 Ответ

0 голосов
/ 07 июля 2018

Вам не нужно инициализировать параметры загрузки CI дважды, и вы должны использовать ./uploads/ вместо uploads/. В противном случае это просто вопрос проверки следующим образом:

    if ($this->input->post('userSubmit')) {
        if (!empty($_FILES['file_upload']['name'])) {
            if (is_file('./uploads/' . $_FILES['file_upload']['name'])) {
                show_error('File already exists!'); // function exits
            }
            $config['upload_path'] = './uploads/'; // correct way
            $config['allowed_types'] = 'doc|docx|pdf';
            $config['file_name'] = $_FILES['file_upload']['name'];
            $this->load->library('upload', $config);
            //$this->upload->initialize($config); you already did this ^
            if ($this->upload->do_upload('file_upload')) {
                $uploadData = $this->upload->data();
                $picture = $uploadData['file_name'];
            } else {
                $picture = '';
            }
        } else {
            $picture = '';
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...