Codeigniter загрузить имя файла

Обычно мы можем получить данные формы в Codeigniter используя $this->input->get('field_name') или же $this->input->post('field_name') и это нормально.

В сыром виде PHP мы используем $_FILES["fileToUpload"]["name"] чтобы получить имя файла, который пользователь пытается загрузить.

Мой вопрос: есть ли Codeigniter способ получить имя файла, который нужно загрузить?

Я пытаюсь сказать, что мне нужно получить имя файла, который пользователь пытается загрузить, прежде чем пытаться сохранить его на моем сервере, используя Codeigniter библиотека вместо использования сырых PHP Глобальный $_FILES переменная.

<?php

class Upload extends CI_Controller {

public function __construct()
{
parent::__construct();
$this->load->helper(array('form', 'url'));
}

public function index()
{
$this->load->view('upload_form', array('error' => ' ' ));
}

public function do_upload()
{
$config['upload_path']          = './uploads/';
$config['allowed_types']        = 'gif|jpg|png';
$config['max_size']             = 100;
$config['max_width']            = 1024;
$config['max_height']           = 768;

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

// get the user submitted file name here

if ( ! $this->upload->do_upload('userfile'))
{
$error = array('error' => $this->upload->display_errors());

$this->load->view('upload_form', $error);
}
else
{
$data = array('upload_data' => $this->upload->data());

$this->load->view('upload_success', $data);
}
}
}
?>

1

Решение

$upload_data = $this->upload->data();
$file_name =   $upload_data['file_name'];

Вот 2 версия документа для 2 и для 3

если вы хотите получить имя файла в бэкэнде:

$this->upload->file_name Это будет работать на основе system/library/upload.php
эта функция.

public function data()
{
return array (
'file_name'         => $this->file_name,
'file_type'         => $this->file_type,
...
);
}

Если вам нужно получить имя файла …

Перед сохранением на сервер … у вас есть работа в JavaScript

<?php echo "<input type='file' name='userfile' size='20' onchange='changeEventHandler(event);' />"; ?>

Событие onchange в javascript:

<script>
function changeEventHandler(event){
alert(event.target.value);
}
</script>
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector