2016-09-27 3 views
2

Ich habe eine EingabeWie in Upload-Validierung für mehrere Bilder tun Laravel 5.3

<input type="file" name="image[]" multiple="multiple" /> 

und Reglerfunktion

public function upload(Request $request) 
{ 
    $user_id = Auth::user()->id; 

    foreach ($request->image as $image) 
    { 
     $this->validate($request,[ 
     'image' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048' 
    ]); 
     $imageName = mt_rand() .time().'.'.$image->getClientOriginalExtension(); 
     $img = Image::make($image->getRealPath()); 
     $img->resize(100, 100, function ($constraint) { 
            $constraint->aspectRatio(); 
        })->save(public_path('images/thumbs').'/'.$imageName); 
     $image->move(public_path('images'), $imageName); 
    } 
} 

aber die ganze Zeit Validierer gibt mir Fehler, dass

The image must be an image. 

Antwort

5

Verschieben Sie die Validierung außerhalb der Schleife und versuchen Sie es mit den folgenden Regeln:

'image' => 'required', 
'image.*' => 'image|mimes:jpeg,png,jpg,gif,svg|max:2048' 
+0

Dies ist die beste Antwort –