PHP image and file batch upload code_PHP tutorial
PHP image and file batch upload code
Whether it is file or image batch upload, the first thing we do is to make an array variable like name=userfile[] in html, in php During acceptance, we do for ($_i=0; $_i<$_cont; $_i++) traversal so that we can upload files in batches. Let me look at an example below
Example
代码如下 | |||||||||||||||||
session_start(); <script><br> $(document).ready(function() {<br> $('#cont').val($('.file #file').size());<br> $('#send').eq(0).click(function() {<br> var filesize=$('.file #file').size();<br> $('.file').append("<input type='file' name='userfile[]' id='file'/>");<br> $('#cont').val(filesize+1);<br> });<br> });<br> </script> PHP文件批量上传if ($_GET['up']==up) { //防止重复提交 if ($_SESSION['file']==$_GET['irand']) { $_cont=intval($_POST['cont']); //将file框总数接收并转换成整型 $_size=20000; //设置限制文件大小 $_dir='pdir/'; //文件保存目录 function size($_size) { //判断文件大小是否大于1024bit 如果大于,则将大小取值为KB,以此类推 if ($_size>1024*1024) { return round($_size/1024/1024,2).' MB'; }else if ($_size>1024) { $_size=$_size/1024; return ceil($_size).'KB'; }else { return $_size.' bit'; } } //设置上传图片的类型,设置图片上传大小 $_upfiles = array('image/jpeg','image/pjpeg','image/png','image/x-png','image/gif'); //利用for循环上传文件 for ($_i=0; $_i<$_cont; $_i++) { if (is_array($_upfiles)) { if (!in_array($_FILES['userfile']['type'][$_i],$_upfiles)) { exit('Please upload files in the format: jpg, png, gif Return'); } } //Judge file size if ($_FILES['userfile']['size'][$_i]>$_size) { exit('Uploaded files cannot exceed:'.size($_size)); } //Check whether the file has been uploaded if ($_FILES['userfile']['error'][$_i]>0) { switch ($_FILES['userfile']['error'][1]) { case 1: echo 'The uploaded file exceeds the limit of the upload_max_filesize option in php.ini'; break; case 2: echo 'The size of the uploaded file exceeds the value specified by the MAX_FILE_SIZE option in the HTML form'; break; case 3: echo 'Only part of the file was uploaded'; break; case 4: echo 'No files uploaded'; break; case 6: echo 'Temp folder not found'; break; case 7: echo 'File writing failed'; break; } exit; } //Get file extension if (!is_dir($_dir)) { mkdir($_dir,0700); } //Generate number of essays $_rand=mt_rand(0,100000); //Get file extension $_n=explode('.',$_FILES['userfile']['name'][$_i]); //Split the file name $_file_len=count($_n); //Return the array length //Make sure the extension obtained is the last one. The following $_name=$_dir.time().'_'.$_rand.'.'.$_n[$_file_len-1]; //Move the file to the specified directory if (is_uploaded_file($_FILES['userfile']['tmp_name'][$_i])) { if (!@move_uploaded_file($_FILES['userfile']['tmp_name'][$_i],$_name)) { exit('File move failed'); }else { echo 'File uploaded successfully '; echo 'File path:'.$_name.' '; echo 'File size:'.size(filesize($_name)); echo ' Return to continue uploading'; } }else { exit('The uploaded temporary file does not exist and the file cannot be moved to the specified folder'); } } //Destroy session variables, there are several methods //The first one, destroy all session variables: session_destroy(); //Second type: Destroy a single item such as: $_SESSION['file']='' session_destroy(); exit; }else { 核心原理分析 在多文件上传中我们前台最重要的是
这几行代码有细节的朋友会发现name="userfile[]"了,这个是以数组存储了,这样我们如果使用js也可以这样增加就可以了,那么在php是如何获取的呢 在多文件上传中php处理是一个关键
这里显示很简单我们会看到有一个for,for就是遍历数组,遍历userfile[]数组,然后再由$_FILES['userfile']['tmp_name'][$_i]来获取不同文件图片再进行上传即可,注意[$_i]就是你的多文件上传项了,只是保存在了数组中。 Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
![]() Hot AI Tools![]() Undresser.AI UndressAI-powered app for creating realistic nude photos ![]() AI Clothes RemoverOnline AI tool for removing clothes from photos. ![]() Undress AI ToolUndress images for free ![]() Clothoff.ioAI clothes remover ![]() Video Face SwapSwap faces in any video effortlessly with our completely free AI face swap tool! ![]() Hot Article
Assassin's Creed Shadows: Seashell Riddle Solution
4 weeks ago
By DDD
What's New in Windows 11 KB5054979 & How to Fix Update Issues
3 weeks ago
By DDD
Where to find the Crane Control Keycard in Atomfall
4 weeks ago
By DDD
Roblox: Dead Rails - How To Complete Every Challenge
1 months ago
By DDD
How to fix KB5055523 fails to install in Windows 11?
2 weeks ago
By DDD
![]() Hot Tools![]() Notepad++7.3.1Easy-to-use and free code editor ![]() SublimeText3 Chinese versionChinese version, very easy to use ![]() Zend Studio 13.0.1Powerful PHP integrated development environment ![]() Dreamweaver CS6Visual web development tools ![]() SublimeText3 Mac versionGod-level code editing software (SublimeText3) ![]() Hot Topics![]() PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati ![]() If you are an experienced PHP developer, you might have the feeling that you’ve been there and done that already.You have developed a significant number of applications, debugged millions of lines of code, and tweaked a bunch of scripts to achieve op ![]() Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c ![]() JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably, ![]() A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total ![]() This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an ![]() Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead. ![]() What are the magic methods of PHP? PHP's magic methods include: 1.\_\_construct, used to initialize objects; 2.\_\_destruct, used to clean up resources; 3.\_\_call, handle non-existent method calls; 4.\_\_get, implement dynamic attribute access; 5.\_\_set, implement dynamic attribute settings. These methods are automatically called in certain situations, improving code flexibility and efficiency. ![]() |