Загрузка файла Symfony & quot; Ошибка: вызов функции-члена getClientOriginalName () для null & quot;

Я работаю над формой Symfony с загрузкой файлов. Однако, когда я загружаю меньший файл, он работает правильно, но с большим файлом, скажем, 8 МБ, он выдает следующую ошибку при использовании getClientOriginalName () или guessClientExtension ().

Ошибка: вызов функции-члена getClientOriginalName () со значением NULL

Это форма веточки

<form method="post" role="form" {{form_enctype(form)}}>
{{form_widget(form.file)}}
{{form_errors(form.file) }}
{{form_rest(form)}}
<button class="btn btn-primary" type="submit">Upload</button>
</form>

IndexController.php

public function indexAction() {
$form = $this->createFormBuilder()
->add('file', 'file')
->getForm();

$request = $this->getRequest();
if ($request->getMethod() == 'POST') {
$form->bind($request);
$upload_file = $form['file']->getData();

$ext = strtolower(pathinfo($upload_file->getClientOriginalName(), PATHINFO_EXTENSION));

if (!in_array($ext, array("csv", "xlsx", "xls"))) {
$form->get("file")->addError(new FormError("Invalid file format"));
}

if ($form->isValid()) {
if ($upload_file) {
$upload_file_name = $this->getUser()->getId() . "_" . date("ymdHis") . "." . $ext;
$upload_file->move("uploads", $upload_file_name);
}
}
}

return $this->render('AppBundle:Index:index.html.twig', array('form' => $form->createView()));
}

Я установил upload_max_size в php.ini на 64 МБ и увеличил также max_execution_time. Что я здесь не так делаю? Он работает с небольшими файлами, но не с файлом 8 МБ. Пожалуйста помоги.

0

Решение

Вы должны изменить следующим образом:

memory_limit = ?M
upload_max_filesize = ?M
post_max_size = ?M

Если upload_max_filesize больше, чем post_max_size, вы должны увеличить post_max_size, чтобы он был больше, чем upload_max_size.

Если значение post_max_size больше, чем memory_limit, вы должны увеличить memory_limit, чтобы оно было больше, чем post_max_size.

3

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

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

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