Я работаю над формой загрузки файлов mp3 и ударился о стену: /. Можете ли вы помочь, пожалуйста?
Вот мой HTML:
<form id="file-form" method="POST">
<input class="profileMenu" id="mp3file" name="mp3file" type="file" multiple/>
</form>
<div onclick="test()" class="col-md-1 profileMenu" id="uploadButton">Upload</div>
Вот мой JavaScript:
function test() {
var form = document.getElementById('file-form');
var fileSelect = document.getElementById('mp3file');
var uploadButton = document.getElementById('uploadButton');
uploadButton.innerHTML = 'Uploading...';
var files = fileSelect.files;
var formData = new FormData();
for (var i = 0; i < files.length; i++) {
var file = files[i];
formData.append('mp3file', file, file.name);
var xhr = new XMLHttpRequest();
xhr.open('POST', 'php/commercial/upload.php', true);
xhr.onload = function () {
if (xhr.status === 200) {
uploadButton.innerHTML = 'Upload';
}
else {
alert('An error occurred!');
}
};
xhr.send(formData);
}
}
И наконец мой PHP:
<?php
$target_path = "uploads/";
$target_path = $target_path . basename( $_FILES['filename']['name']);
if(move_uploaded_file($_FILES['filename']['tmp_name'], $target_path)) {
echo "The file ". basename( $_FILES['filename']['name']). " has been uploaded";
} else{
echo "There was an error uploading the file, please try again!";
}
?>
Я пытаюсь загрузить mp3-файлы на свой сервер и отсортировать их по папкам, проверка формы проходит нормально, запрос не возвращает никаких ошибок, и кажется, что мой php-код не выполняет то, что должно быть, я знаю, что могу это сделать с кнопкой отправки без использования JavaScript, но мне нужно сделать это таким образом. Так что, если у кого-то из вас есть идея, я был бы очень благодарен.
Задача ещё не решена.
Других решений пока нет …