Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 06.03.2015 23:10:27

PavelSokolov

Request::file всегда null :(

Пытаюсь залить изображение через форму.

Форма
<form action="/newimages" method="post" >
     <input type="hidden" name="_token" value="{{ csrf_token() }}">
     <label>Прикрепить изображение</label>
     <input name="img" type="file">
     <button type="submit">Отправить</button>
</form>

Контроллер
public function addImg(){
        $input = Request::all();
        $file = Request::file('img');
        var_dump($input);
        var_dump($file);
    }

После обработки:
array(4) { ["_token"]=> string(40) "kukFaGwEZSMpPRqUS0gjWVJy4caEJBK3PgldA2Ue" ["title"]=> string(0) "" ["body"]=> string(0) "" ["image"]=> string(14) "image_name.jpg" }
NULL

Картинка вроде прикрепляется, но Request::file('img') всегда отдает NULL. Что я делаю не так?

#2 07.03.2015 00:35:55

Re: Request::file всегда null :(

Возможно файл не валидный ( Request::file('photo')->isValid() )
Определение, загружался ли файл в запросе: Request::hasFile('photo')

P.S. Вместо var_dump() можно вполне использовать ларавеловский dd()

Не в сети

#3 07.03.2015 00:56:36

PavelSokolov

Re: Request::file всегда null :(

Файлы разные заливал, результат один - null и все тут. Request::hasFile говорит false.

Развернул чистый фрейм - все заработало, видимо где-то ранее что-то сковырнул, буду смотреть.

dd не приглянулся: сворачивает то, что не нужно.

#4 07.03.2015 10:17:59

Re: Request::file всегда null :(

Форма должна иметь атрибут enctype="multipart/form-data"

Не в сети

Подвал раздела