[PHP] pear 模組 HTTP_Upload 多重檔案上傳 Multiple files upload

自從上次介紹了 [PHP]好用的上傳 pear 模組 HTTP_Upload,最近又要使用到多重的檔案上傳,就又去看了一下官網的 document 寫的還蠻詳細的,大家去看看大概就知道我的作法了,底下是我的寫法: html 部份

 
 
  
 

上傳後 PHP 處理的結果:

getFiles();
/* 處理自訂檔名 */
$i = "0";
/* file_show_name array number */
foreach($files as $file){
  if (PEAR::isError($file)) {
      echo $file->getMessage();
  }
  /* 檔案上傳後 */  
  if ($file->isValid()) 
  {
    
    $file->setName("uniq");
    
    $moved = $file->moveTo($upload_dir);
    if (!PEAR::isError($moved)) 
    {
      /* 寫到資料庫裡面 */
      $sql = "INSERT INTO " . FILES_TABLE . " (`file_id`, `file_type`, `dateline` , `filesize` , `filename` , `file_real_name`, `file_show_name` , `extention`) VALUES ('".$list_id."', '".$type."', '".$time."', '".$file->getProp("size")."', '".$file->getProp("name")."', '".$file->getProp("real")."', '".$_POST['file_show_name'][$i]."', '".$file->getProp("ext")."')";        
      if( !($result = $db->sql_query($sql)) )
      {
      	die("Could not query config information " . $sql);
      }                     
      $fid = $db->sql_nextid();
    } 
    else {
      echo $moved->getMessage();
    }
  } 
  elseif ($file->isMissing()) 
  {
  } 
  elseif ($file->isError()) 
  {
    echo $file->errorMsg();
  }
  /* 處理 file_show_name array number */
  $i++;
}  
?>
php 

See also