私は単純なHTMLファイルのアップロードをしようとしています。Laravelが要求しているファイルを受け付けていません
<form accept-charset="utf-8" name="gallery" method="POST" action="/gallery">
<input type="hidden" name="_token" value="fQ7arteCHmBFVfvQARWxxK3dXNgUJF40FdsaD3R">
<label class="btn btn-default">
Browse <input type="file" name="gallery[]" hidden multiple>
</label>
</form>
私はXdebugをして、それをトレースしていると私は$request->gallery
は、ファイル名の配列を示しているが、ファイル数はまだゼロであることがわかります。
if (!$request->files->count()) {
return redirect()->back()->with('error', 'Empty file list.');
}
PHPのグローバル変数$_FILES
も空です。
これはAJAX上でDropzone.jsのようなものを使用して送信したときに問題なく動作しますが、標準のHTML5フォーム要素を使用すると機能しません。
ここに明白なものがありません。
フォームで – Demonyowh
フォームに 'enctype'を追加する' 'のenctype = "multipart/form-data" を追加し、ファイルをアップロードすることができますが、今Laravelはsymfonyの'でそれらをラップしています\ Component \ HttpFoundation \ File \ UploadedFile'の代わりに 'Illuminate \ Http \ UploadedFile'を使用します。それが間違ったラッパークラスを使用している理由は何ですか? – eComEvo
これを試してください。$ files = $ request-> gallery;その内容を確認してください – Demonyowh