2016-07-24 16 views
1

私のフォームにLaravel 5で問題があります。「multipart/form-data」にenctype属性を指定すると、トークンの不一致エラーが発生します。それが削除されると、フォームは常に自分のコントローラで指定された検証に失敗します。Laravel 5:複数のファイルと他の入力をアップロードする

HTML

<form class="lajax" action="{{ action('[email protected]') }}" method="POST"> 
        <div class="form-group"> 
         <label>Album Name</label> 
         <input type="text" name="name" class="form-control">             
        </div> 

        <div class="form-group"> 
         <label for="coverFile">Album Cover Image</label> 
         <input name="cover" type="file" id="coverFile"> 
         <p class="help-block">Example block-level help text here.</p> 
        </div> 

        <div class="form-group"> 
         <label for="albumFiles">Album Images</label> 
         <input type="file" name="photos[]" multiple> 
        </div> 

        <button type="submit" class="btn btn-primary">Create Album</button> 

        {{ csrf_field() }} 
       </form> 

コントローラ

public function store(Request $request) 
    { 

     //request input verification rules 
     $rules=[ 
      'name'=>'required', 
      'cover'=>'required|image', 
      'photos'=>'required|array', 
      'photos.*'=>'image' 
     ]; 

     //perform validation 
     $this->validate($request,$rules); 

     // blah blah 
    } 

具体的には、画像が失敗しているように見えます。

エラーが報告されました:カバーは画像ではありません。photo.0は画像ではありません。写真1はありません。画像.....など。あなたはこのようなあなたの入力をチェックすることができ、あなたのコントローラで

<form method="POST" action="{{ action('[email protected]') }}" accept-charset="UTF-8" enctype="multipart/form-data"> 

:へ

<form class="lajax" action="{{ action('[email protected]') }}" method="POST"> 

答えて

0

私はエラーが見つかりました!私のphp.iniファイルにありました。私はpost_max_sizeを3Mから1000Mに変更します。出来た。

0

変更を助けてください

$request->hasFile('file_input_name'); 

またLaravel Collectivをチェック電子フォームを作成する:https://laravelcollective.com/

関連する問題