원래 주소:
http://www.webcodegeeks.com/html5/html5-file-upload-example/
이 문서에서는 HTML5 사용 방법을 보여줍니다. 사용자가 선택한 파일 정보를 읽고 파일을 서버에 업로드합니다.
FileApi는 HTML5에 추가된 가장 흥미로운 새로운 기능 중 하나입니다. 파일을 업로드하기 전에 읽을 수 있습니다. 서버로 표시된 파일의 정보를 가져오고, 게시 양식을 사용하지 않고도 파일을 보낼 수 있습니다.
다음은 사용자가 선택한 파일 정보를 읽는 방법을 보여줍니다. Ajax를 사용하여 이러한 파일을 비동기적으로 업로드합니다.
1. 1.1: 파일이 하나뿐인 상황
HTML 코드는 다음과 같습니다
사용자가 파일을 선택하면 입력 요소가 "change" 이벤트를 생성하므로 이 이벤트를 들을 수 있습니다.
<input type="file" id="fileinput">
보시다시피, FileApi는 사용이 매우 간단하며 "files" 속성을 추가합니다.
document.getElementById('fileinput').addEventListener('change', function(){ var file = this.files[0]; // This code is only for demo ... console.log("name : " + file.name); console.log("size : " + file.size); console.log("type : " + file.type); console.log("date : " + file.lastModified); }, false);
요약: "files" 속성은 쓸 수 없으며 내용을 읽을 수만 있습니다. .files[0] 사용자가 선택한 첫 번째 파일을 가져올 수 있습니다.
1.2: 여러 파일
이제 사용자가 선택한 모든 파일 정보를 표시해 보겠습니다.
HTML 코드는 다음과 같습니다
사용자가 업로드할 여러 파일을 선택할 수 있도록 입력 요소 "다중" 속성만 추가하면 됩니다.
<input type="file" id="fileinput" multiple>
요약: 추가할 수도 있습니다. 사용자가 업로드할 수 있는 파일 형식을 필터링하려면 "accept" 태그를 사용하세요. 예를 들어 사용자가 이미지만 업로드하도록 하려면 MIME 형식 "image/*"만 필터링하면 됩니다.
document.getElementById('fileinput').addEventListener('change', function(){ for(var i = 0; i<this.files.length i var file="this.files[i];" this code is only for demo ... console.group console.log : file.name file.size file.type file.lastmodified console.groupend false><p><span></span></p> <pre name="code"><input type="file" id="fileinput" multiple accept="image/*">1.3 파일 미리보기
파일 정보와 파일 내용을 모두 읽을 수 있습니다. 예를 들어 업로드하기 전에 파일을 미리 볼 수 있습니다.
미리보기 이미지를 예로 들어보겠습니다.
HTML 코드는 다음과 같습니다.
JavaScript를 사용하여 파일 업로드를 관리합니다.
<meta charset="UTF-8"> <title>Preview images</title> <style> #gallery .thumbnail{ width:150px; height: 150px; float:left; margin:2px; } #gallery .thumbnail img{ width:150px; height: 150px; } </style> <h2 id="Upload-images">Upload images ...</h2> <input type="file" id="fileinput" multiple accept="image/*"> <div id="gallery"></div> <script src="gallery.js"></script>
gallery.js
previewImage 기능은 다음에서 선택한 파일을 표시합니다. user.
var uploadfiles = document.querySelector('#fileinput'); uploadfiles.addEventListener('change', function () { var files = this.files; for(var i=0; i<files.length i previewimage false><p><span></span>gallery.js</p> <p> <span></span>파일 내용을 비동기적으로 읽기 위해 FileReader 개체를 도입했습니다. 새 FileReader를 사용하여 개체를 인스턴스화합니다. 그런 다음 readAsUrl 메서드를 호출하여 파일 데이터를 읽습니다. </p> <pre name="code">function previewImage(file) { var galleryId = "gallery"; var gallery = document.getElementById(galleryId); var imageType = /image.*/; if (!file.type.match(imageType)) { throw "File Type must be an image"; } var thumb = document.createElement("div"); thumb.classList.add('thumbnail'); // Add the class thumbnail to the created div var img = document.createElement("img"); img.file = file; thumb.appendChild(img); gallery.appendChild(thumb); // 使用FileReader来显示图片内容 var reader = new FileReader(); reader.onload = (function(aImg) { return function(e) { aImg.src = e.target.result; }; })(img); reader.readAsDataURL(file); }onload 메소드는 파일 내용을 읽은 후 이벤트처럼 호출되며, 파일 내용은 이미지 요소의 src 속성에 할당됩니다: aImg.src = e.target.result;
2. 파일 업로드
파일 업로드에는 XMLHttpRequest(Ajax)를 사용합니다. .
사용자가 선택한 각 파일은 HTTP 요청을 생성하여 서버로 보냅니다.
먼저 XMLHttpRequest를 포함하는 메서드를 정의합니다.
function uploadFile(file){ var url = 'server/index.php'; var xhr = new XMLHttpRequest(); var fd = new FormData(); xhr.open("POST", url, true); xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.status == 200) { // Every thing ok, file uploaded console.log(xhr.responseText); // handle response. } }; fd.append("upload_file", file); xhr.send(fd); }이 메서드는 지정된 URL에 대한 ajax 요청(post 메서드를 통해)을 생성하고 "upload_file"에 파일 콘텐츠를 보냅니다. $_FILES['upload_file']을 통해 이 매개변수를 가져올 수 있습니다.
이제 uploadFile 메소드를 사용하여 선택한 파일을 업로드하겠습니다.
Js는 다음과 같습니다.
<input type="file" id="uploadfiles" multiple>
PHP 스크립트는 다음과 같습니다.
var uploadfiles = document.querySelector('#uploadfiles'); uploadfiles.addEventListener('change', function () { var files = this.files; for(var i=0; i<files.length i uploadfile false><p><span></span></p>3 . <pre name="code">if (isset($_FILES['upload_file'])) { if(move_uploaded_file($_FILES['upload_file']['tmp_name'], "datas/" . $_FILES['upload_file']['name'])){ echo $_FILES['upload_file']['name']. " OK"; } else { echo $_FILES['upload_file']['name']. " KO"; } exit; } else { echo "No files uploaded ..."; }
모든 소스코드
다운로드 위 내용은 관련 내용을 포함하여 HTML5 파일 업로드 예시를 소개하고 있으니 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되었으면 좋겠습니다.

想了解更多关于开源的内容,请访问:51CTO鸿蒙开发者社区https://ost.51cto.com运行环境DAYU200:4.0.10.16SDK:4.0.10.15IDE:4.0.600一、创建应用点击File->newFile->CreateProgect。选择模版:【OpenHarmony】EmptyAbility:填写项目名,shici,应用包名com.nut.shici,应用存储位置XXX(不要有中文,特殊字符,空格)。CompileSDK10,Model:Stage。Device

使用Java的File.length()函数获取文件的大小文件大小是在处理文件操作时很常见的一个需求,Java提供了一个很方便的方法来获取文件的大小,即使用File类的length()方法。本文将介绍如何使用该方法来获取文件的大小,并给出相应的代码示例。首先,我们需要创建一个File对象来表示我们想要获取大小的文件。以下是创建File对象的方法:Filef

php blob转file的方法:1、创建一个php示例文件;2、通过“function blobToFile(blob) {return new File([blob], 'screenshot.png', { type: 'image/jpeg' })}”方法实现Blob转File即可。

console是控制台的意思,是一种与计算机系统进行交互的设备或软件,用于与计算机系统进行交互,它通常是一个带有键盘和屏幕的设备,用于输入和输出信息,控制台最初用于大型计算机系统,后来也应用于个人计算机和服务器,它可以帮助用户管理和维护计算机系统,以及安装操作系统和应用程序,调试程序等。

使用C#中的Console.Clear函数清空控制台输出在C#的控制台应用程序中,我们经常需要清空控制台中的输出信息,以便于显示新的内容或者提供更好的用户体验。C#中提供了Console.Clear函数来实现这个功能,它能够清除控制台中的输出,让界面重新变为空白。Console.Clear函数的调用格式如下:Console.Clear();该函数无需输入任何

使用Java的File.renameTo()函数重命名文件在Java编程中,我们经常需要对文件进行重命名的操作。Java提供了File类来处理文件操作,其中的renameTo()函数可以方便地重命名文件。本文将介绍如何使用Java的File.renameTo()函数来重命名文件,并提供相应的代码示例。File.renameTo()函数是File类的一个方法,

console是控制台,计算机程序中用于输入和输出文本或命令的交互界面,在不同的操作系统和开发环境中,控制台可能具有不同的外观和功能。通常是一个文本界面,提供了一个命令行界面或命令行提示符,允许用户通过键盘输入命令,并显示程序的输出结果。

使用java的File.getParentFile()函数获取文件的父目录在Java编程中,我们经常需要操作文件和文件夹。当我们需要获取文件的父目录时,可以使用Java提供的File.getParentFile()函数来完成。本文将介绍如何使用这个函数并提供代码示例。Java中的File类是用于操作文件和文件夹的主要类。它提供了许多方法来获取和操作文件的属性


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

드림위버 CS6
시각적 웹 개발 도구

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

WebStorm Mac 버전
유용한 JavaScript 개발 도구

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

뜨거운 주제



