繁体   English   中英

PHP图像上传代码不起作用

[英]PHP image upload code not working

我有一个不上传图片的php图片上传代码。

的PHP

if (isset($_FILES['file']) && $_FILES['file']['error']==0) {
      $files = $_FILES['file'];
     echo $tmp_name = $files['tmp_name'];
     $moved=move_uploaded_file($tmp_name,"../a.jpg");
     if($moved){        
     echo'Done!';
     }
}else{
   echo 'Error uploading, code '.$_FILES['file']['error'];
}

的HTML

<form method="post" enctype="multipart/form-data" action="samefile.php">
      <input type="file" name="file">
      <input type="file" name="file">
      <input type="submit" value="submit">
</form>

这是我的代码的简化形式。 在实际情况下,有多个上载按钮,但一次只能使用一个按钮。

问题是它显示错误Error uploading, code 4
请帮忙。
谢谢

试试这个代码,这将为您上载多个文件,您需要使用name="file[]"而不是name="file"来提交所有文件,这将提交数组中的所有文件,并且您可以使用php中的for循环来循环每个文件文件..

<form method="post" enctype="multipart/form-data" action="samefile.php">
      <input type="file" name="file[]" >
      <input type="file" name="file[]" >
      <input type="submit" value="submit">
</form>

在php文件中

<?php 
if (isset($_FILES['file']))
{
    $total = count($_FILES['file']['name']);
    for($i=0; $i < $total; $i++)// Loop for each file
    { 
      $tmp_name = $_FILES['file']['tmp_name'][$i];
      if ($tmp_name != "")
      {
        $targetFile = "../" . $_FILES['file']['name'][$i];
        //Upload the file 
        if(move_uploaded_file($tmp_name,$targetFile)) 
        {
          echo'Done!';
        }
      }
    }
}   

?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM