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 相关文章推荐
基于php设计模式中工厂模式详细介绍
May 15 PHP
什么情况下可以不写PHP的闭合标签“?&gt;”
Aug 28 PHP
php实现的发送带附件邮件类实例
Sep 22 PHP
PHP 抽象方法与抽象类abstract关键字介绍及应用
Oct 16 PHP
PHP利用header跳转失效的解决方法
Oct 24 PHP
PHP实现模仿socket请求返回页面的方法
Nov 04 PHP
主流PHP框架的优缺点对比分析
Dec 25 PHP
WordPress中用于获取文章信息以及分类链接的函数用法
Dec 18 PHP
全面解读PHP的Yii框架中的日志功能
Mar 17 PHP
Smarty简单生成表单元素的方法示例
May 23 PHP
php类的自动加载操作实例详解
Sep 28 PHP
php实现单笔转账到支付宝功能
Oct 09 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
php数据结构 算法(PHP描述) 简单选择排序 simple selection sort
2011/08/09 PHP
PHP文件上传问题汇总(文件大小检测、大文件上传处理)
2015/12/24 PHP
php lcg_value与mt_rand生成0~1随机小数的效果对比分析
2017/04/05 PHP
Laravel实现ApiToken认证请求
2019/10/14 PHP
javascript Base类 包含基本的方法
2009/07/22 Javascript
ext 同步和异步示例代码
2009/09/18 Javascript
NodeJS框架Express的模板视图机制分析
2011/07/19 NodeJs
javascript的动态加载、缓存、更新以及复用(一)
2014/06/09 Javascript
js操作模态窗口及父子窗口间相互传值示例
2014/06/09 Javascript
jQuery模拟黑客帝国矩阵效果实例
2015/06/28 Javascript
省市区三级联动下拉框菜单javascript版
2015/08/11 Javascript
JavaScript实现的简单烟花特效代码
2015/10/20 Javascript
node模块机制与异步处理详解
2016/03/13 Javascript
jQuery无刷新上传之uploadify3.1简单使用
2016/06/18 Javascript
AngularJS监听路由变化的方法
2017/03/07 Javascript
Mongoose经常返回e11000 error的原因分析
2017/03/29 Javascript
详解Node.js 命令行程序开发教程
2017/06/07 Javascript
从对象列表中获取一个对象的方法,依据关键字和值
2017/09/20 Javascript
基于nodejs实现微信支付功能
2017/12/20 NodeJs
单页面vue引入百度统计的使用方法示例详解
2018/10/13 Javascript
详解小程序rich-text对富文本支持方案
2018/11/28 Javascript
基于Webpack4和React hooks搭建项目的方法
2019/02/05 Javascript
基于vue如何发布一个npm包的方法步骤
2019/05/15 Javascript
基于vue-cli3+typescript的tsx开发模板搭建过程分享
2020/02/28 Javascript
python实现马耳可夫链算法实例分析
2015/05/20 Python
Python判断Abundant Number的方法
2015/06/15 Python
Python 找到列表中满足某些条件的元素方法
2018/06/26 Python
python3 打印输出字典中特定的某个key的方法示例
2019/07/06 Python
基于Python实现简单学生管理系统
2020/07/24 Python
css3的focus-within选择器的使用
2020/05/11 HTML / CSS
联想香港官方网站及网店:Lenovo香港
2018/04/13 全球购物
竞聘演讲稿范文
2014/01/12 职场文书
小学开学寄语
2014/01/19 职场文书
幼儿园亲子活动方案
2014/01/29 职场文书
追讨欠款律师函
2015/06/24 职场文书
一篇文章带你搞懂Python类的相关知识
2021/05/20 Python