如何在php中以相同的选择顺序上传多个图像

时间:2015-09-08 06:12:02

标签: php

我想以相同的选择顺序上传多张图片。例如,如果我选择5个图像,选择顺序为a.jpg , b.jpg, c.jpg, d.jpg, e.jpg,但我的代码是以相反的顺序上传这些图像。最后上载第一个所选图像,并首先上载最后选择的图像。在这种情况下,我无法理解图像排序是如何工作的。如果我选择b.jpg第一,e.jpg第二和a.jpg第三,那么它应该按照与b.jpge.jpg,{{1}相同的顺序上传这些图像}。 我的代码如下。

a.jpg

我的表格是

      include('lib/myclass.php');
      include('simpleimage.php');

      for($i=0;$i<count($_FILES['file']['name']);$i++)
      { 

        $image_name = $_FILES['file']['name'][$i];
        $split = explode(".", $image_name);
        $extension = $split[count($split)-1];
        $name = $split[count($split)-2];
        $filename = $db_product.$name.rand().'.'.$extension;


        if(move_uploaded_file($_FILES['file']['tmp_name'][$i],'product/'.$filename))
        {
          $image = new SimpleImage();
          $image->load('product/'.$filename);
          $image->resize(60,50);
          $image->save('product/small/'.$filename); 

          $db_insert="insert into tbl_products_image(Id, Rno, Image)values('null','".$_POST['rrno']."','".$filename."')";
          $obj->insert($db_insert);
         }
      }

如何使用相同的图像选择顺序上传多张图像?

1 个答案:

答案 0 :(得分:1)

因为,你发现图像的顺序是相反的。然后改变循环。这可能有所帮助。

include('lib/myclass.php');
include('simpleimage.php');

$TotalImage=count($_FILES['file']['name']);

for($i=$TotalImage;$i>0;$i--) //Change Loop in reverse order. 
{ 

    $image_name = $_FILES['file']['name'][$i];
    $split = explode(".", $image_name);
    $extension = $split[count($split)-1];
    $name = $split[count($split)-2];
    $filename = $db_product.$name.rand().'.'.$extension;


    if(move_uploaded_file($_FILES['file']['tmp_name'][$i],'product/'.$filename))
    {
      $image = new SimpleImage();
      $image->load('product/'.$filename);
      $image->resize(60,50);
      $image->save('product/small/'.$filename); 

      $db_insert="insert into tbl_products_image(Id, Rno, Image)values('null','".$_POST['rrno']."','".$filename."')";
      $obj->insert($db_insert);
     }
}