2

私は 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を使用せずに送信ボタンを使用しますが、この方法で行う必要があります。だから、もしあなたの誰かが何か考えを持っていれば、私はとても感謝しています.

4

0 に答える 0