PHP, jQuery 및 AJAX를 사용하여 Ajax 기반 다중 파일 업로드를 구현하는 방법은 무엇입니까?

Linda Hamilton
풀어 주다: 2024-11-23 05:54:14
원래의
738명이 탐색했습니다.

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

PHP, jQuery 및 AJAX를 사용한 Ajax 기반 다중 파일 업로드

PHP, jQuery 및 AJAX를 사용하여 여러 파일을 업로드하려면 다음을 따르세요. 다음 단계:

HTML 양식:

<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(파일 추가):

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

JavaScript(파일 업로드):

$('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 파일 업로드 처리:

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 />";
    }
}
로그인 후 복사

이 코드는 Ajax 요청을 통해 여러 파일을 업로드하는 프로세스를 간소화합니다.

위 내용은 PHP, jQuery 및 AJAX를 사용하여 Ajax 기반 다중 파일 업로드를 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿