php多文件上传功能实现原理及代码


Posted in PHP onApril 18, 2013

今天对多图片上传功能小小的研究了一下,把下面的代码整理出来,方便以后自己使用以及供大家交流
1、upload.html页面,即先是input type=file的文件

<html> 
<head> 
<title></title> 
</head> 
<body> 
<form enctype="multipart/form-data" action="do_upload.php" method="POST"> 
<!--表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;只有使用了multipart/form- data,才能完整的传递文件数据,进行下面的操作.--> 
<fieldset> 
<legend>图片上传</legend> 
第一张图片<input name="userfile" type="file"><br> 
第二张图片<input name="userfile" type="file"><br> 
第三张图片<input name="userfile" type="file"><br> 
第四张图片<input name="userfile" type="file"><br> 
第五张图片<input name="userfile" type="file"><br> 
<!--数组的形式传递数据--> 
<input type="submit" value="Send File"> 
</fieldset> 
</form> 
</body> 
</html>

2、do_upload.php页面,即处理多文件上传的页面
<?php 
//全局数组$_FILES 
//$_FILES['userfile']['tmp_name']文件在web服务器中临时存储的位置 
//$_FILES['userfile']['name']用户系统中的文件名称 
//$_FILES['userfile']['size']文件的字节大小 
//$_FILES['userfile']['type']文件的MIME类型,text/plain,image/gif 
//$_FILES['userfile']['error']与文件上载相关的错误代码 
?> 
<?php 
//用for循环来获取传递的数据,是一个三维数据 
for ($i=0;$i<count($_FILES['userfile']['tmp_name']);$i++) 
{ 
$upfile=$new_folder."/".$_FILES['userfile']['name'][$i];//此处可以根据自己的需要修改 
if(move_uploaded_file($_FILES['userfile']['tmp_name'][$i],$upfile)){ 
echo "第".($i+1)."张图片上传成功<br>"; 
} 
else{ 
echo "第".($i+1)."张图片上传不了<br>"; 
} 
} 
?>
PHP 相关文章推荐
Apache设置虚拟WEB
Oct 09 PHP
php 文件上传代码(限制jpg文件)
Jan 05 PHP
队列在编程中的实际应用(php)
Sep 04 PHP
Pain 全世界最小最简单的PHP模板引擎 (普通版)
Oct 23 PHP
php 强制下载文件实现代码
Oct 28 PHP
php实现批量下载百度云盘文件例子分享
Apr 10 PHP
php数组查找函数总结
Nov 18 PHP
php调用淘宝开放API实现根据卖家昵称获取卖家店铺ID的方法
Jul 29 PHP
php自动加载方式集合
Apr 04 PHP
屏蔽PHP默认设置中的Notice警告的方法
May 20 PHP
php操作xml并将其插入数据库的实现方法
Sep 08 PHP
PHP中类与对象功能、用法实例解读
Mar 27 PHP
php实现多张图片上传加水印技巧
Apr 18 #PHP
基于initPHP的框架介绍
Apr 18 #PHP
PHP header()函数使用详细(301、404等错误设置)
Apr 17 #PHP
ajax完美实现两个网页 分页功能的实例代码
Apr 16 #PHP
关于Iframe如何跨域访问Cookie和Session的解决方法
Apr 15 #PHP
关于PHP的相似度计算函数:levenshtein的使用介绍
Apr 15 #PHP
关于PHP递归算法和应用方法介绍
Apr 15 #PHP
You might like
Zend 输出产生XML解析错误
2009/03/03 PHP
PHP保留两位小数并且四舍五入及不四舍五入的方法
2013/09/22 PHP
PHP实现图片裁剪、添加水印效果代码
2014/10/01 PHP
PHP 微信扫码支付源代码(推荐)
2016/11/03 PHP
Laravel中的Blade模板引擎示例详解
2017/10/10 PHP
javascript支持firefox,ie7页面布局拖拽效果代码
2007/12/20 Javascript
js下用gb2312编码解码实现方法
2009/12/31 Javascript
由JavaScript技术实现的web小游戏(不含网游)
2010/06/12 Javascript
基于jQuery的动态表格插件
2011/03/28 Javascript
extjs render 用法介绍
2013/09/11 Javascript
JavaScript动态创建div属性和样式示例代码
2013/10/09 Javascript
JavaScript代码实现图片循环滚动效果
2020/03/19 Javascript
js判断数组key是否存在(不用循环)的简单实例
2016/08/03 Javascript
原生JS发送异步数据请求
2017/06/08 Javascript
详解vue-router2.0动态路由获取参数
2017/06/14 Javascript
js es6系列教程 - 新的类语法实战选项卡(详解)
2017/09/02 Javascript
在layui中使用form表单监听ajax异步验证注册的实例
2019/09/03 Javascript
jQuery实现消息弹出框效果
2019/12/10 jQuery
jQuery 选择器用法实例分析【prev + next】
2020/05/22 jQuery
vue实现移动端拖动排序
2020/08/21 Javascript
微信小程序实现购物车小功能
2020/12/30 Javascript
如何使用原生Js实现随机点名详解
2021/01/06 Javascript
[13:18]《一刀刀一天》之DOTA全时刻21:详解TI新赛制 A队再露獠牙
2014/06/24 DOTA
python有证书的加密解密实现方法
2014/11/19 Python
使用Python的web.py框架实现类似Django的ORM查询的教程
2015/05/02 Python
Python 堆叠柱状图绘制方法
2019/07/29 Python
Python 函数用法简单示例【定义、参数、返回值、函数嵌套】
2019/09/20 Python
python实现七段数码管和倒计时效果
2019/11/23 Python
详解Windows下PyCharm安装Numpy包及无法安装问题解决方案
2020/06/18 Python
CSS3教程(1):什么是CSS3
2009/04/02 HTML / CSS
医学生职业规划范文
2014/01/05 职场文书
如何打造一封优秀的留学推荐信
2014/01/25 职场文书
职工擅自离岗检讨书
2014/09/23 职场文书
2014入党积极分子批评与自我批评思想报告
2014/10/06 职场文书
学生会个人总结范文
2015/02/15 职场文书
php中pcntl_fork详解
2021/04/01 PHP