1

我的多张图片上传有问题。

编码

function tester($yourUniqueId){

             $this->load->library('upload'); 

             for($i=0; $i<count($_FILES); $i++)
             {

               $_FILES['userfile']['name']    = $_FILES['filename']['name'][$i];
               $_FILES['userfile']['type']    = $_FILES['filename']['type'][$i];
               $_FILES['userfile']['tmp_name'] = $_FILES['filename']['tmp_name'][$i];
               $_FILES['userfile']['error']       = $_FILES['filename']['error'][$i];
               $_FILES['userfile']['size']    = $_FILES['filename']['size'][$i];

                $path = './uploads/' . $yourUniqueId;
                mkdir($path);

               $config['file_name']     = "kep_" . $i;
               $config['upload_path']   =  $path;
               $config['allowed_types'] = 'jpg|jpeg|png';
               $config['max_size']      = '0';
               $config['overwrite']     = FALSE;

              $this->upload->initialize($config);

              if($this->upload->do_upload())
              {
                $error += 0;

              }else{
                $error += 1;
                }
             }

                 if($error > 0){ 

                    return FALSE; 
                    }else{
                         return TRUE; 

                     }



}

它有点奇怪,因为它返回错误,我给它一个回声

if($error > 0){ 
echo 'Something went wrong'; //just for a test                   
return FALSE; 

难道不显示回声吗?

我不能让它工作。

代码有什么磨损吗?

请有人给我一个提示吗?我在任何地方都看不到

4

1 回答 1

1

尝试替换这个:

if($this->upload->do_upload())
{
    $error += 0;
}else{
    $error += 1;
}

有了这个:

if ( !$this->upload->do_upload())
{
    $error++;
    echo $this->upload->display_errors();
}

那应该告诉你出了什么问题。您可能还想包装 mkdir() 函数以防目录确实存在(否则我不知道 PHP 如何处理它——可能会提前返回):

if ( !is_dir($path))
{
    mkdir($path, 0777, TRUE); // make it writable!
}
于 2011-12-03T10:22:42.110 回答