загрузка файла codeigniter-необязательно?
Я уверен, что это просто, но я не вижу, как сделать загрузку файла с CI необязательной.
Если оставить поле ввода файла пустым, появится сообщение об ошибке "вы не выбрали файл для загрузки".
причина, по которой я хочу, чтобы это было необязательно, заключается в том, что моя форма редактирует список типов каталогов, и мне не нужно загружать изображение каждый раз, когда я редактирую список.
есть ли способ удалить" требуемую " обработку ошибок в классе файлов
3 ответов
использовать следующий:
<?php if ( $_FILES AND $_FILES['field_name']['name'] )
{
// Upload the file
}
загрузка файла codeigniter необязательно ...отлично работает..... :)
---------- контроллер ---------
function file()
{
$this->load->view('includes/template', $data);
}
function valid_file()
{
$this->form_validation->set_rules('userfile', 'File', 'trim|xss_clean');
if ($this->form_validation->run()==FALSE)
{
$this->file();
}
else
{
$config['upload_path'] = './documents/';
$config['allowed_types'] = 'gif|jpg|png|docx|doc|txt|rtf';
$config['max_size'] = '1000';
$config['max_width'] = '1024';
$config['max_height'] = '768';
$this->load->library('upload', $config);
if ( !$this->upload->do_upload('userfile',FALSE))
{
$this->form_validation->set_message('checkdoc', $data['error'] = $this->upload->display_errors());
if($_FILES['userfile']['error'] != 4)
{
return false;
}
}
else
{
return true;
}
}
Я просто использую эти строки, что делает его необязательно,
if($_FILES['userfile']['error'] != 4)
{
return false;
}
$_FILES['userfile']['error'] != 4 is for file required to upload.
вы можете сделать это unneccessory с помощью $_FILES['userfile']['error'] != 4
, затем он передаст эту ошибку для требуемого файла и
отлично работает с другими типами ошибок, если таковые имеются, с помощью возвращает false ,
надеюсь, это сработает для u ....
используйте этот код в контроллере перед вызовом do_upload ()
if (is_uploaded_file($_FILES['field_name']['tmp_name'])) {
// your code here
}