萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> php 多個文件上傳

php 多個文件上傳

多個文件上傳功能,其實很簡單與單文件上傳區別就是文件名用數組形式,然後獲取上傳的文件時就利用foreach來個個上傳,這樣就實例的文件批量上傳的功能了哦。其它也是單文件,只是看上去是多個文件同時上傳了。  代碼如下 復制代碼

<!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";
 
 }
}
?>

copyright © 萬盛學電腦網 all rights reserved