Level 75
Has been asked and answered:
With jquery
https://appdividend.com/2018/02/09/laravel-multiple-files-upload-tutorial-example/
how upload multiple files using ajax in laravel
this is my code ``
public function store(Request $request){
// return response()->json(['success'=>$request['property_type']]);
// request()->validate([ // // 'image' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048', // // ]);
$catagory =$request['property_type'];
$directories = Storage::directories('upload');
foreach ($directories as $directry ){
if( $directry == 'upload/'.$catagory){
if($request->hasFile('images[]')){
foreach ( $request->file('images[]') as $file){
$fileName = rand(1, 999).date('m-d-Y_hia').$file->getClientOriginalName();
$path = $file->storeAs('upload/'.$catagory, $fileName);
return response()->json(['success'=> $path] );
}
}
}
}
Storage::makeDirectory('upload/'.$catagory);
if($request->hasFile('images[]')){
foreach ( $request->file('images[]') as $file){
$fileName = rand(1, 999).date('m-d-Y_hia').$file->getClientOriginalName();
$path = $file->storeAs('upload/'.$catagory, $fileName);
return response()->json(['success'=> $file] );
}
}
return response()->json(['success'=>$request["not"]] );
}
$("#add-property-button").click(function (e) {
e.preventDefault();
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('#_token').val()
}
});
console.log( $('input[type=file]')[0].files);
var formdata = new FormData();
var files =$('input[type=file]')[0].files;
console.log(files.length);
for(var i=0;i<files.length;i++){
formdata.append("images[]", files[i], files[i]['name']);
}
// formdata.append("images", $('input[type=file]')[0].files);
formdata.append("property_type",$('#property_type').val());
formdata.append("location",$("#txtlocation").val());
formdata.append("rooms",$("#txtrooms").val());
formdata.append("landsize",$("#txtlandsize").val());
formdata.append("bathsize",$("#txtbathsize").val());
formdata.append("housesize",$("#txthousesize").val());
formdata.append("address",$("#txtaddress").val());
formdata.append("description",$("#txtdescription").val());
formdata.append("cost",$("#txtcost").val());
formdata.append("is_negotiable",$("#is_negotiable").val());
formdata.append("name",$("#txtname").val());
formdata.append("phone",$("#txtphone").val());
formdata.append("email",$("#txtemail").val());
formdata.append("_token",$('#_token').val());
console.log(formdata);
jQuery.ajax({
url: 'upload-property',
method: 'POST',
data: formdata,
contentType: false,
processData: false,
beforeSend: function (xhr) {
console.log('hello');
},
success: function (respond) {
console.log(respond);
},
// Event complete
complete: function (jqXHR, textStatus) {
}
});
});
``
Please or to participate in this conversation.