您的位置:首页 > 编程语言 > PHP开发

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

2013-04-18 00:00 1231 查看
今天对多图片上传功能小小的研究了一下,把下面的代码整理出来,方便以后自己使用以及供大家交流
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>"; 
} 
} 
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: