У меня проблемы с загрузкой файлов с помощью CodeIgniter 2.1.0, так как я получаю массив $ _FILES пустым.Не удается загрузить файлы с CodeIgniter 2.1.0
Это форма:
<form enctype="multipart/form-data" action="<?= base_url()?>nicUpload/test" method="POST">
Send this file: <input name="userfile" type="file" />
<input type="submit" value="Send File" />
</form>
Действие в оказанной форме принимает значение: http://localhost/nicUpload/test
.
Это контроллер:
<?php
class NicUpload extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->helper(array('form', 'url'));
}
function test() {
echo count($_FILES);
}
}
?>
В результате 0
, я ожидал бы 1
.
Я попытался сделать то же самое без CodeIgniter:
index.php:
<!doctype html>
<html>
<head></head>
<body>
<form enctype="multipart/form-data" action="upload.php" method="POST">
Send this file: <input name="userfile" type="file" />
<input type="submit" value="Send File" />
</form>
</body>
</html>
upload.php:
<?php
echo count($_FILES);
?>
и я получаю ожидаемый результат (1
). Таким образом, это не проблема конфигурации php.
** UPDATE **
я должен был сказать это раньше, но если я использую CodeIgniter в Загрузить класс он терпит неудачу в этой линии Конфигурационными system/libraries/Upload.php
:
// Is $_FILES[$field] set? If not, no reason to continue.
if (! isset($_FILES[$field]))
{
$this->set_error('upload_no_file_selected');
return FALSE;
}
, как $_FILES
пуст.