zl程序教程

您现在的位置是:首页 >  后端

当前栏目

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

2023-06-13 09:14:50 时间
今天对多图片上传功能小小的研究了一下,把下面的代码整理出来,方便以后自己使用以及供大家交流
1、upload.html页面,即先是inputtype=file的文件
复制代码代码如下:

<html>
<head>
<title></title>
</head>
<body>
<formenctype="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>
第一张图片<inputname="userfile"type="file"><br>
第二张图片<inputname="userfile"type="file"><br>
第三张图片<inputname="userfile"type="file"><br>
第四张图片<inputname="userfile"type="file"><br>
第五张图片<inputname="userfile"type="file"><br>
<!--数组的形式传递数据-->
<inputtype="submit"value="SendFile">
</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>";
}
}
?>