php 多个文件上传 |
时间:2015-01-23 来源:西部数据 作者:西部数据 |
|
多个文件上传功能,其实很简单与单文件上传区别就是文件名用数组形式,然后获取上传的文件时就利用foreach来个个上传,这样就实现了文件批量上传的功能了,其实也是单文件,只是看上去是多个文件同时上传了.
PHP实例源码如下:
- <!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="content-type" content="text/html; charset=gb2312" />
- <title>php 多个文件上传</title>
- </head>
-
- <body>
- <form action="" method="post" enctype="multipart/form-data" name="form1" id="form1">
- <p>
- <label for="select"></label>
- <label for="filefield"></label>
- <input type="file" name="name[]" id="filefield" />
- </p>
- <p>
- <input type="file" name="name[]" id="filefield2" />
- </p>
- <p>
- <input type="file" name="name[]" id="filefield3" />
- </p>
- <p>
- <input type="file" name="name[]" id="filefield4" />
- </p>
- <p>
- <input type="file" name="name[]" id="filefield5" />
- </p>
- <p>
- <input type="submit" name="button" id="button" value="批量文件上传" />
- </p>
- </form>
- </body>
- </html>
-
- <?php
-
- foreach($_files as $f)
- {
-
- if (function_exists("iconv")) $f[name] = iconv("utf-8","gb2312",$f[name]);
-
- $unm=intval(mt_rand(1000,9999));
- $file="z_upload/".date("ymdhms").$unm.$f[name];
-
-
- if (file_exists($file)) header("http/1.0 403");
-
-
- if (!@move_uploaded_file($f["tmp_name"],$file))
- {
- header("http/1.0 404 not found");
- }else{
- if(!isset($_cookie['uploadpic'])){
- setcookie("uploadpic",$file);
- }else{
- unlink($_cookie['uploadpic']);
- setcookie("uploadpic","");
- setcookie("uploadpic",$file);
- }
- echo "1";
-
- }
- }
- ?>
|
|
|
|