2016-12-12 2 views
1

у меня есть это на моем контроллере:Недействительного аргумент для Еогеаспа() Laravel-5,3

public function store(Request $request) 
{ 
    $images = $request->file('image'); 
    $file_count = count($images); 
    $uploadcount = 0; 
    $daily = new Report(); 

    foreach($images as $image) {  
    $daily = new Report();  
    $destination ='img/report'; 
    $filename = $image->getClientOriginalName(); 
    storage::put('img/report/'.$filename,file_get_contents($request->file('image')->getRealPath()));   
    $daily->image = $filename; 
    $uploadcount ++;   
    } 
    $daily->author = $request->author; 
    $daily->desc = $request->desc; 
    // $daily->created_at = Carbon::now(); 
    $daily->save(); 
if($uploadcount == $file_count){ 
return redirect('/daily'); 
}else{ 
return redirect('/daily/create'); 
} 
} 

и браузер говорят: Вызов функция члена getRealPath() на массиве я хочу, чтобы хранить несколько изображений в база данных.

это мой blade.php

<form action="/daily/create" method="POST" enctype="multipart/form-data"> 
    <input type="hidden" name="_token" value="{{{ csrf_token() }}}"> 
    {{-- date --}} 
    {!! Form::text('date', old('date', Carbon\Carbon::today()->format('d-m-Y')),['class'=>'form-control date-picker']) !!} 
    {{-- penulis --}} 
    <label for="author">Author :</label> 
    <input name="author" type="text" value="{{ Auth::user()->name }}"> 
    {{-- textarea --}} 
    <label for="desc">Description</label> 
    <textarea name="desc" id="" cols="30" rows="10"></textarea> 
    {{-- input image --}} 
    <div class="file-field input-field"> 
    <div class="btn"> 
    <span>File</span> 
    <input type="file" name="image[]" multiple> 
    </div> 
    <div class="file-path-wrapper"> 
    <input class="file-path validate" type="text" placeholder="Upload one or more files"> 
    </div> 
</div> 
<center> 
<input type="submit" class="btn"> 
</center> 

    </form> 

я должен удалить '[]' на входе изображение 'лезвия'? и «массировать» его на контроллере? как я это делаю?

+0

Вы передавая массив 'image' с точки зрения? –

+0

$ images - это не массив, вы можете сделать dd ($ images) и посмотреть, какой тип данных он – michaeltintiuc

+0

@SaumyaRastogi я не знаю, я просто прочитал это сообщение http://stackoverflow.com/questions/31468120/how-to -upload-multiple-images-and-store-their-name-in-database-with-laravel-5-1 и следовать за ним, затем error :( –

ответ

0

Измените следующий код в контроллере:

storage::put('img/report/'.$filename,file_get_contents($request->file('image')->getRealPath())); 

в

storage::put('img/report/'.$filename,file_get_contents($image->getRealPath())); 
+0

yesssss это большая благодарность ... но только последнее имя магазина изображений в базе данных все изображения, хранящиеся в папке, как я назвал все изображения, если только одно имя изображения, хранящееся в базе данных? –

+0

рад помочь .. –

+0

, но только последнее имя хранилища изображений в базу данных все изображения, хранящиеся в папке, как я назвал все изображения, если только одно имя изображения, хранящееся в базе данных –

Смежные вопросы