Laravel 5.2: загрузка нескольких изображений с вмешательством, но загружено только первое изображение

Здравствуйте, я пытаюсь загрузить несколько изображений с помощью пакета вмешательства, но когда я начинаю загрузку, только одно изображение загружается

вот вид

{!! Form::open(array('url'=>'admin/event-gallery', 'method'=>'post', 'files'=>'true')) !!}
{!! Form::label('image', 'Event Image Gallery') !!}
{!! Form::file('image[]', ['multiple']) !!}
{!! Form::hidden('event_id', $event->id) !!}
{!! Form::submit('Add More Images', array('class'=>'btn btn-primary')) !!}
{!! Form::close() !!}

а вот и контроллер

    public function store( Request $request ) {
$event = new EventGallery();
if ( $request->hasFile( 'image' ) ) {
$images = $request->file( 'image' );
foreach ( $images as $image ) {
$event->event_id = $request->event_id;
$filename        = time() . '.' . $image->getClientOriginalExtension();
Image::make( $image )->resize( 450, 150 )->save( 'images/events/' . $filename );
Image::make( $image )->fit( 243, 111 )->save( 'images/events/thumbs-' . $filename );
$event->image = $filename;
}
}
$event->save();
Session::flash( 'status', 'Event has been added successfully' );

return Redirect::to( 'admin/events/create' );
}

Изменить, как я получил это работает

  1. Сначала это был save() вне foreach петля.
  2. Во-вторых, у меня возникла очень странная проблема, когда я закончил с загрузкой, я обнаружил, что изображения дублированы, и это объясняется этой частью кода. $filename = time() . '.' . $image->getClientOriginalExtension(); это было потому, что time() так что не верь time() когда вы загружаете несколько файлов здесь, я заменил его str_random( 10 ) и после этого все было в порядке.

если у кого-то есть какие-либо комментарии или предложения, будем рады услышать от него.

2

Решение

Задача ещё не решена.

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

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

По вопросам рекламы [email protected]