> 웹 프론트엔드 > JS 튜토리얼 > AJAX, PHP 및 jQuery를 사용하여 여러 이미지를 효율적으로 업로드하려면 어떻게 해야 합니까?

AJAX, PHP 및 jQuery를 사용하여 여러 이미지를 효율적으로 업로드하려면 어떻게 해야 합니까?

Barbara Streisand
풀어 주다: 2024-11-24 18:20:14
원래의
876명이 탐색했습니다.

How can I efficiently upload multiple images using AJAX, PHP, and jQuery?

AJAX, PHP 및 jQuery를 사용하여 여러 이미지 업로드

이 토론에서는 AJAX 기술을 사용하여 여러 이미지를 업로드하는 문제를 다룹니다. 사용자는 AJAX를 통해 여러 파일을 전송하는 데 어려움을 겪어 파일 전달이 불완전해졌다고 설명합니다. 이 문서에서는 JSON을 활용하여 파일 객체를 효율적으로 처리하고 성공적인 업로드를 촉진하는 포괄적인 솔루션을 제공합니다.

HTML

다음 HTML 코드는 웹 페이지의 구조를 설정합니다. 드래그 앤 드롭 기능 요소, 파일 입력, 업로드 진행률 표시 섹션 등이 포함됩니다. 결과:

<div>
로그인 후 복사

CSS

파일 업로드 프로세스 중에 사용자 인터페이스를 향상하고 시각적 단서를 제공하기 위해 스타일이 적용되었습니다.

#uploads {
  display: block;
  position: relative;
}

#uploads li {
  list-style: none;
}
로그인 후 복사

JavaScript

JavaScript 코드가 파일을 처리합니다. 업로드 프로세스, AJAX를 활용하여 서버와 통신합니다. 진행 상황 추적을 위해 JSON을 사용하여 파일 데이터와 HTML5 기술을 캡슐화합니다.

$(document).on("change", "input[name^='file']", function (e) {
    e.preventDefault();
    var This = this,
        display = $("#uploads");

    // process file object
    $.each(This.files, function (i, file) {
        var reader = new FileReader(),
            dfd = new $.Deferred();
        reader.onload = function (e) {
            // convert file to data URL
            dfd.resolveWith(file, [e.target.result])
        };
        reader.readAsDataURL(new Blob([file], {
            "type": file.type
        }));
        dfd.then(function (data) {
            // send file data using AJAX
            $.ajax({
                url: "/echo/json/",
                type: "POST",
                data: {
                    "file": JSON.stringify({
                        "file": data,
                        "name": file.name,
                        "size": file.size,
                        "type": file.type
                    })
                }
            })
            .then(function (data, textStatus, jqxhr) {
                console.log(data)
                display.append("<br /><li>", img, "</li><br />");
                return data
            }, function (jqxhr, textStatus, errorThrown) {
                console.log(errorThrown);
                return errorThrown
            });
        })
    });
});
로그인 후 복사

PHP

PHP 스크립트는 JSON 형식으로 인코딩된 파일 데이터를 수신하여 반환합니다. JSON 문자열로:

<?php
if (isset($_POST["file"])) {
    // process file object
    $file = json_encode($_POST["file"]);
    // return file as JSON string
    echo $file;
};
?>
로그인 후 복사

이러한 기술을 구현하면 AJAX를 사용하여 여러 이미지를 효율적으로 업로드할 수 있습니다. PHP와 jQuery. JSON 접근 방식은 파일 전송을 단순화하고, 진행률 추적을 사용하면 업로드 상태에 대한 실시간 피드백을 제공하여 사용자 경험을 향상시킵니다.

위 내용은 AJAX, PHP 및 jQuery를 사용하여 여러 이미지를 효율적으로 업로드하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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