2017-07-26 111 views
0

我正在处理我的项目我想用单一形式上传图像,但我有两个输入字段。我希望当我在提交时在两个输入字段中选择两个图像时我希望我的两个文件都存储在文件夹中我向您展示了我的代码,但是使用此代码,我只获取一个图像。我想要我上传的两张图片。我的形式看起来像这样关于多个文件以单一形式上传

enter image description here

Here is my code: 

public function upload_creative_workshop_image($post, $files){ 
    //print_r($files); die; 
    $allowedExts= array("jpeg", "jpg", "png", "gif"); 
    $temp = explode(".", $files["image1"]["name"]); 
    $extension = end($temp); 

    if ((($files["image1"]["type"] == "image/jpeg") //check image is mp3 
    || ($files["image1"]["type"] == "image/gif") //check image is mp4 
    || ($files["image1"]["type"] == "image/jpg") //check image is jpg 
    || ($files["image1"]["type"] == "image/png")) //check image is png 
    && ($files["image1"]["size"]) //check if image size is below 6MB 
    && in_array(trim($extension), $allowedExts)) //check the extensions also 
     { 
      if($files["image1"]["error"] > 0){ 
       echo $files["image1"]["error"]; 
      } 
      else{ 
     $filename = $files["image1"]["name"]; 
     $upload= move_uploaded_file($files["image1"]["tmp_name"], $this->img_path.$filename); 
     //print_r($upload); die; 
     if($upload){ 
      //$this->store_image_indb($filename, $post); 
       } 
      } 
     }else{ 

      echo "<h1>please upload image only</h1>"; 
     } 
} 
+0

你必须调用你想要上传的每个图像的函数。在这种情况下,您的输入字段应具有不同的名称,如'image1'和'image2'。 **但是**我所要做的就是让输入字段变为多个,然后用'$ files'数组中的图像调用一次函数。为此,你必须在你的函数中添加一个循环。 – trpx

+0

是啊我有两个字段是这样的不同名称: – kulu

+0

​​”> – kulu

回答

0

您可以使用多型形式的数据,如

<form method=post action='' enctype='multipart/form-data'> 
<input type=file name='images[]'> 
+0

我也使用这个 – kulu

+0

kulu

+0

@kulu你能否给我提供JS代码方面?在返回验证() – Andrew

0

如果你有一个像“图像1”和“图像2”两个不同的名字,那么请检查下面的解决方案:

你必须像下面那样运行$ _FILES数组的循环,并且必须稍微修改你的上传函数,如下所示。

<?php 

if (isset($_FILES)) { 
    if (COUNT($_FILES) >= 1) { 
    foreach ($_FILES as $i_key => $image_file) { 
     $testObject = new test(); 
     $testObject->upload_creative_workshop_image($image_file); 
} 
} 
} 

class test { 
function upload_creative_workshop_image($image){ 
    //print_r($files); die; 
    $allowedExts= array("jpeg", "jpg", "png", "gif"); 
    $temp = explode(".", $image["name"]); 
    $extension = end($temp); 

    if ((($image["type"] == "image/jpeg") //check image is mp3 
    || ($image["type"] == "image/gif") //check image is mp4 
    || ($image["type"] == "image/jpg") //check image is jpg 
    || ($image["type"] == "image/png")) //check image is png 
    && ($image["size"]) //check if image size is below 6MB 
    && in_array(trim($extension), $allowedExts)) //check the extensions also 
    { 
     if($image["error"] > 0){ 
      echo $image["error"]; 
     } 
     else{ 
    $filename = $image["name"]; 
    $upload= move_uploaded_file($image["tmp_name"], 'uploads/'.$filename); 
    //print_r($upload); die; 
    if($upload){ 
     //$this->store_image_indb($filename, $post); 
      } 
     } 
    }else{ 

     echo "<h1>please upload image only</h1>"; 
    } 
} 
} 
?> 
+0

这是不正确的代码与此代码m面临许多错误,你的代码有很多错误一些变量不匹配循环和功能 – kulu

+0

这是完美的运行代码我试了我的自我。如果你知道哎呀,那么你可以运行它没有错误。 – Himani

+0

是啊我在这个项目中使用,但是当我使用这个代码我面临的错误可以告诉我这个PHP代码我应该在哪里放置它意味着哪个文件m不是在谈论函数m谈论顶级代码,你告诉我 – kulu

相关问题