2017-01-11 19 views
1

フォーム入力から画像を保存しようとしています。しかし、それは動作していません。私は、次のようなコードを持っている: ビュー:画像入力が機能していません。ララール

<form role="form" method="post" action="store" enctype="multipart/form-data"> 
<label class="control-label">Select Images</label> 
<input id="image" name="image[]" multiple type="file"> 

コントローラ:私はリターン($イメージを)しようとしたとき、コントローラで

public function store(Request $request) 
    { 

      $image = $request->file('image'); 

     $input['imagename'] = time().'.'.$image->getClientOriginalExtension(); 

     $destinationPath = public_path('/images'); 

     $image->move($destinationPath, $input['imagename']); 


     $this->postImage->add($input); 

} 

$イメージは何も返しませんが。ここで何が間違っていますか?誰でも助けてくれますか?

答えて

1

画像の配列は<input id="image" name="image[]" multiple type="file">です。その配列から画像を取得するにはforeachを実行する必要があります。あなたは、単一の画像をアップロードしたい場合は、画像から[]を削除して、このような入力を記入してください:

<input id="image" name="image" type="file"> 
+0

これは、単一のファイルのために働きました。しかし、コントローラのforeachを次のように使用しようとしました。 foreach($ image as $ image){ $ image = $ request-> file( 'image'); $ input ['imagename'] = time()。 '。' $ image-> getClientOriginalExtension(); $ destinationPath = public_path( '/ images'); $ image-> move($ destinationPath、$ input ['imagename']); } 未定義の変数:画像のエラーを示しています。ここで何が間違っていますか? – Anon

+0

最初に複数のファイルをアップロードしたい場合は、入力ファイルを配列として残し、その上の投稿にある複数の属性を追加します。あなたは以下のようにforeachを書く必要があります: foreach($ request-> file( 'image')$ i){$ image = $ i; $ input ['imagename'] = time()。 '。' $ image-> getClientOriginalExtension(); $ destinationPath = public_path( '/ images'); $ image-> move($ destinationPath、$ input ['imagename']); } – Buglinjo

+0

1画像のみ保存しています。 – Anon

関連する問題