main
Ilham Wara Nugroho 2025-09-12 09:53:35 +07:00
parent 1dd624ba25
commit 7aad2e583f
2 changed files with 40 additions and 41 deletions

View File

@ -45,7 +45,6 @@ class AjaxController extends Controller
}
public function uploadTempImage(Request $request)
{
dd($request->all());
$request->validate([
'file.*' => 'required|file|mimes:png,jpg,jpeg|max:5120',
]);

View File

@ -206,50 +206,50 @@
});
const myDropzone = new Dropzone(".dropzone", {
url: "{{ url('uploadTempImage') }}", // URL ke controller kamu
method: "POST",
xhrFields: {
withCredentials: true
},
headers: {
'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').getAttribute('content'),
'X-Requested-With': 'XMLHttpRequest'
},
// maxFilesize: 1, // dalam MB
acceptedFiles: ".png,.jpg,.jpeg",
paramName: "file", // nama input file yang dikirim ke controller
params: {
_token: document.querySelector('meta[name="csrf-token"]').getAttribute('content')
},
uploadMultiple: true,
init: function() {
this.on("successmultiple", function(files, response) {
console.log('Upload success multiple:', response);
url: "{{ url('uploadTempImage') }}", // URL ke controller kamu
method: "POST",
// xhrFields: {
// withCredentials: true
// },
headers: {
'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').getAttribute('content'),
'X-Requested-With': 'XMLHttpRequest'
},
// maxFilesize: 1, // dalam MB
acceptedFiles: ".png,.jpg,.jpeg",
paramName: "file", // nama input file yang dikirim ke controller
params: {
_token: document.querySelector('meta[name="csrf-token"]').getAttribute('content')
},
uploadMultiple: true,
init: function() {
this.on("successmultiple", function(files, response) {
console.log('Upload success multiple:', response);
const fileList = document.getElementById('file-list');
const fileList = document.getElementById('file-list');
response.files.forEach(function(fileInfo) {
const li = document.createElement('li');
li.innerHTML = `<a>${fileInfo.filename}</a>`;
fileList.appendChild(li);
response.files.forEach(function(fileInfo) {
const li = document.createElement('li');
li.innerHTML = `<a>${fileInfo.filename}</a>`;
fileList.appendChild(li);
// Tambahkan ke hidden input kalau perlu
const hiddenInput = document.createElement('input');
hiddenInput.type = 'hidden';
hiddenInput.name = 'input_upload_files[]';
hiddenInput.class = 'removeFormKriteria';
hiddenInput.value = fileInfo.filename;
var elem = '<input type="hidden" name="input_upload_files[]" value="'+fileInfo.filename+'" class="removeFormKriteria uploadedFiles is-required">';
$('.changeForm').append(elem);
// Tambahkan ke hidden input kalau perlu
const hiddenInput = document.createElement('input');
hiddenInput.type = 'hidden';
hiddenInput.name = 'input_upload_files[]';
hiddenInput.class = 'removeFormKriteria';
hiddenInput.value = fileInfo.filename;
var elem = '<input type="hidden" name="input_upload_files[]" value="'+fileInfo.filename+'" class="removeFormKriteria uploadedFiles is-required">';
$('#form').append(elem);
});
});
});
this.on("error", function(file, response) {
console.error('Upload error:', response);
toastr.error(response, 'Error!', {positionClass: 'toast-bottom-right', containerId: 'toast-bottom-right'});
this.removeFile(file);
});
}
});
this.on("error", function(file, response) {
console.error('Upload error:', response);
toastr.error(response, 'Error!', {positionClass: 'toast-bottom-right', containerId: 'toast-bottom-right'});
this.removeFile(file);
});
}
});
</script>
@endsection