2017-03-16 1 views
0

ファイルの検証方法はまだ違っていますが、まだ動作していません。私が試した検証ルールはff:mimes &のMIMEタイプです。アップロードするファイルを1つまたは複数のファイルとして検証したい。ファイルを検証するコードは次のとおりですLaravelでのMIMEタイプの検証方法

$this->validate($request, [ 
     'body' => 'required|max:120', 
     'file' => 'mimes:jpeg,png,jpg,gif,svg|max:2048' 
    ]); 

    $user = Auth::user(); 

    $post = new Post(); 
    $post->body = $request['body']; 
    $post->user_id = $user->id; 
    $files = $request['file']; 
    $post->save(); 

    if ($request->hasFile('file')) : 
     foreach ($files as $file): 
      $filename = time() . '.' . $file->getClientOriginalExtension(); 
      $originalname = $file->getClientOriginalName(); 
      $location = public_path('attachments/'); 
      $file->move($location, $file->getClientOriginalName()); 
      $post_file = new File(); 
      $post_file->file_name = $filename; 
      $post_file->previous_file_name = $originalname; 
      $post_file->user_id = $user->id; 
      $post->files()->save($post_file); 
      $post_file->save(); 
     endforeach; 
    endif; 

答えて

0

この行をあなたのものと置き換えてください。

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

同じエラーが返されます。ファイルサイズの制限がある場合、もう1つのエラーは メソッド[validate2048]が存在しません。 validation.file ファイルは、jpeg、png、jpg、gif、svgのタイプのファイルである必要があります。 – Mark

+0

@kennethは親切にチェックして、私は行を編集しました。それでは –

+0

がまだ動作していないことを知らせてください。 – Mark