How to get all files from input type='file' multiple? I have input in my form:
<input type="file" name="images" accept="image/*" multiple>
And here is how my controller looks like:
public function save(Request $request)
{
dd($request->allFiles());
}
But I get only one file, doesn't matter how many files I select.
Here is the output:
array:1 [▼
"images" => UploadedFile {#205 ▼
-test: false
-originalName: "IMG_16122016_170148.png"
-mimeType: "image/png"
-size: 6625
-error: 0
path: "C:\OpenServer\userdata\temp"
filename: "phpAB07.tmp"
basename: "phpAB07.tmp"
pathname: "C:\OpenServer\userdata\temp\phpAB07.tmp"
extension: "tmp"
realPath: "C:\OpenServer\userdata\temp\phpAB07.tmp"
aTime: 2017-02-01 14:47:53
mTime: 2017-02-01 14:47:53
cTime: 2017-02-01 14:47:53
inode: 0
size: 6625
perms: 0100666
owner: 0
group: 0
type: "file"
writable: true
readable: true
executable: false
file: true
dir: false
link: false
linkTarget: "C:\OpenServer\userdata\temp\phpAB07.tmp"
}
]
Try it like this:
<input type="file" name="images[]" accept="image/*" multiple>
public function save(Request $request)
{
dd($request->images);
}
Edit:
You can use something like dropzone perhaps, I use it and I love it:
http://www.dropzonejs.com/
And it will do a POST request for each file you upload, so no need for the files[] then, instead you can treat each request as a new one. Just a quick fyi.
try add [] to name attribute
<input type="file" name="images[]" accept="image/*" multiple>
@RonB1985 This brakes my form.
type="files[]" doesn't exist
Whops, I messed it up :) Fixed it now but Tomi already beat me to it :)
Please sign in or create an account to participate in this conversation.