Heim  >  Artikel  >  Backend-Entwicklung  >  Wie implementiert man Ajax-gestützte Uploads mehrerer Dateien mit PHP, jQuery und AJAX?

Wie implementiert man Ajax-gestützte Uploads mehrerer Dateien mit PHP, jQuery und AJAX?

Linda Hamilton
Linda HamiltonOriginal
2024-11-23 05:54:14714Durchsuche

How to Implement Ajax-Powered Multiple File Uploads with PHP, jQuery, and AJAX?

Ajax-gestütztes Hochladen mehrerer Dateien mit PHP, jQuery und AJAX

Um mehrere Dateien mit PHP, jQuery und AJAX hochzuladen, folgen Sie den Anweisungen diese Schritte:

HTML Formular:

<form enctype="multipart/form-data" action="upload.php" method="post">
    <input name="file[]" type="file" />
    <button class="add_more">Add More Files</button>
    <input type="button">

JavaScript (Datei hinzufügen):

$(document).ready(function() {
    $('.add_more').click(function(e) {
        e.preventDefault();
        $(this).before("<input name='file[]' type='file' />");
    });
});

JavaScript (Dateien hochladen):

$('body').on('click', '#upload', function(e) {
    e.preventDefault();
    var formData = new FormData($(this).parents('form')[0]);

    $.ajax({
        url: 'upload.php',
        type: 'POST',
        xhr: function() {
            var myXhr = $.ajaxSettings.xhr();
            return myXhr;
        },
        success: function (data) {
            alert("Data Uploaded: " + data);
        },
        data: formData,
        cache: false,
        contentType: false,
        processData: false
    });
    return false;
});

PHP-Datei-Upload Verarbeitung:

for ($i = 0; $i < count($_FILES['file']['name']); $i++) {
    $target_path = "uploads/";
    $ext = explode('.', basename($_FILES['file']['name'][$i]));
    $target_path = $target_path . md5(uniqid()) . "." . $ext[count($ext) - 1];

    if (move_uploaded_file($_FILES['file']['tmp_name'][$i], $target_path)) {
        echo "The file has been uploaded successfully <br />";
    } else {
        echo "There was an error uploading the file, please try again! <br />";
    }
}

Dieser Code optimiert den Prozess des Hochladens mehrerer Dateien über eine Ajax-Anfrage.

Das obige ist der detaillierte Inhalt vonWie implementiert man Ajax-gestützte Uploads mehrerer Dateien mit PHP, jQuery und AJAX?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn