0

enter image description here如何上传多个产品的多个图像一次

我一个基于电子商务网站,该网站是卖产品,如T恤衫印花,咖啡杯上的打印工作。 我想上传多个产品的多个图像文件,但它不工作,我附上了我的HTML表单的截图,还有该文件的PHP代码。

请帮我解决这个问题。 在此先感谢。

<?php 
if($_POST) 
{ 
    $userid=$_SESSION['new_userid']; 
    $date = date("Y-m-d H:i:s"); 
    foreach($_POST['productid'] as $row=>$productid) 
    { 
    $pid = mysql_real_escape_string($productid);  
    $quantity = mysql_real_escape_string($_POST['quantity'][$row]); 
    foreach($_FILES['file']['tmp_name'] as $key => $tmp_name) 
{ 
     $file_name = time().$_FILES['file']['name'][$key][$row]; 
     $file_size =$_FILES['file']['size'][$key][$row]; 
     $file_tmp =$_FILES['file']['tmp_name'][$key][$row]; 
     $file_type=$_FILES['file']['type'][$key][$row]; 
     if($file_size > 199097152){ 
      $errors[]='File size must be less than 19 MB'; 
     } 
     $desired_dir="uploads/orders/"; 
     if(empty($errors)==true){ 
      if(is_dir($desired_dir)==false){ 
       mkdir("$desired_dir", 0700);  // Create directory if it does not exist 
      } 
      if(is_dir("$desired_dir/".$file_name)==false){ 
       move_uploaded_file($file_tmp,"$desired_dir/".$file_name); 
      }else{         // rename the file if another one exist 
       $new_dir="$desired_dir/".$file_name.time(); 
       rename($file_tmp,$new_dir) ;    
      } 
     }else{ 
       print_r($errors); 
     } 
      $tempArr[] = $file_name; 

} 
$files_360 .= implode('*',$tempArr); 

//Project images    

    $insert = $DB_class->insert('orders',array("userid"=>$userid,"proid"=>$pid,"quantity"=>$quantity,"images"=>$files_360,"date"=>$date,"status"=>"pending"), ''); 


    } 

} 

?> 

回答

0

我已经解决了这个自己

<?php 
    if($_POST) 
    { 
     $a = 1; 
     $userid=$_SESSION['new_userid']; 
     $date = date("Y-m-d H:i:s"); 
     foreach($_POST['productid'] as $row=>$productid) 
     { 
       $tempArr = ""; 
       $pid = mysql_real_escape_string($productid);  
       $quantity = mysql_real_escape_string($_POST['quantity'][$row]); 
       foreach($_FILES['multifile'.$a]['tmp_name']['file'] as $key => $tmp_name) 
       { 
        $file_name = time().$_FILES['multifile'.$a]['name']['file'][$key]; 
        $file_size =$_FILES['multifile'.$a]['size']['file'][$key]; 
        $file_tmp =$_FILES['multifile'.$a]['tmp_name']['file'][$key]; 
        $file_type=$_FILES['multifile'.$a]['type']['file'][$key]; 
        if($file_size > 199097152){ 
         $errors[]='File size must be less than 19 MB'; 
        } 
        $desired_dir="uploads/orders/"; 
        if(empty($errors)==true){ 
         if(is_dir($desired_dir)==false){ 
          mkdir("$desired_dir", 0700);  // Create directory if it does not exist 
         } 
         if(is_dir("$desired_dir/".$file_name)==false){ 
          move_uploaded_file($file_tmp,"$desired_dir/".$file_name); 
         }else{         // rename the file if another one exist 
          $new_dir="$desired_dir/".$file_name.time(); 
          rename($file_tmp,$new_dir) ;    
         } 
        }else{ 
          print_r($errors); 
        } 
         $tempArr[] = $file_name; 
         $files_360 = ""; 


       } 
       $files_360 = implode('*',$tempArr); 

    //Project images    

     $insert = $DB_class->insert('orders',array("userid"=>$userid,"proid"=>$pid,"quantity"=>$quantity,"images"=>$files_360,"date"=>$date,"status"=>"pending"), ''); 

     $a++; 
     } 

    } 

    ?> 

这里是我的html代码

<input type="file" name="multifile<?php echo $pro_id; ?>[file][]" multiple>