php多文件上传下载示例分享
这篇文章主要介绍了php多文件上传下载示例,需要的朋友可以参考下
<html> <head> <meta charset="utf-8"> <title>index_uploads</title> </head> <body> <form action="uploads.php" method="post" enctype="multipart/form-data"> <input type="file" name="file[]"> <br> <input type="file" name="file[]"> <br> <input type="file" name="file[]"> <br> <input type="file" name="file[]"> <br> <input type="file" name="file[]"> <br> <input type="submit" value="uploads"> </form> </body> </html>
index_uploads.php
<?php echo "<pre>"; print_r($_FILES); echo "</pre>";$count = count($_FILES['file']['name']);
for ($i = 0; $i < $count; $i++) { $tmpfile = $_FILES['file']['tmp_name'][$i]; $filefix = array_pop(explode(".", $_FILES['file']['name'][$i])); $dstfile = "uploads/files/".time()."_".mt_rand().".".$filefix;
if (move_uploaded_file($tmpfile, $dstfile)) { echo "<script>alert('succeed!');window.location.href='listdir.php';</script>"; } else { echo "<script>alert('fail!');window.location.href='index_uploads.php';</script>"; } }
uploads.php
<?php header("content-type:text/html;charset=utf-8"); $dirname = "uploads/files";function listdir($dirname) { $ds = opendir($dirname); while ($file = readdir($ds)) { $path = $dirname.'/'.$file; if ($file != '.' && $file != '..'){ if (is_dir($path)) { listdir($path); } else { echo "<tr>"; echo "<td><img src='$path'></td>"; echo "<td><a href='download.php?imgfile=$file'>Download</a></td>"; echo "</tr>"; } } } } echo "<h2>图片下载|<a href='index_uploads.php'>图片上传</a></h2>"; echo "<table width='700px' border='1px'>"; listdir($dirname); echo "</table>";
listdir.php
<?php $imgfile = $_GET['imgfile']; $path = './uploads/files/'.$imgfile; $imgsize = filesize($path);header("content-type:application/octet-stream"); header("content-disposition:attachment;filename={$imgfile}"); header("content-length:{$imgsize}"); readfile($path);
download.php
download.php
核心下载:
header("content-type:application/octet-stream"); header("content-disposition:attachment;filename={$imgfile}"); header("content-length:{$imgsize}"); readfile($path);