1

我有以下两个 PHP 代码将文件上传到我的网站。第一个创建目录。二是上传图片。

这是我创建目录的 PHP 代码:

<?php
$foldername = $_POST["foldername"]; 
mkdir("uploads", 0777); // Create Folder
mkdir("uploads/input", 0777); // Create Folder
mkdir("uploads/output", 0777); // Create Folder
mkdir("uploads/output/".$foldername, 0777); // Create Folder
mkdir("uploads/output/".$foldername."/modified", 0777); // Create Folder
mkdir("uploads/output/".$foldername."/originals", 0777); // Create Folder
mkdir("uploads/output/".$foldername."/thumbnails", 0777); // Create Folder
?>

这是上传文件的地方。

  $success = 0;
  $fail = 0;
  $uploaddir = 'uploads/input/';
  for ($i=0;$i<10;$i++)
  {
   if($_FILES['userfile']['name'][$i])
   {
    $uploadfile = $uploaddir . basename($_FILES['userfile']['name'][$i]);
    $ext = strtolower(substr($uploadfile,strlen($uploadfile)-3,3));
    if (preg_match("/(jpg|gif|png|bmp)/",$ext))
    {
     if (move_uploaded_file($_FILES['userfile']['tmp_name'][$i], $uploadfile)) 
     {
      $success++;
     } 
     else 
     {
     echo "Error Uploading the file. Retry after sometime.\n";
     $fail++;
     }
    }
    else
    {
     $fail++;
    }
   }
  }
  echo "<br> Number of files Uploaded: ".$success;
  echo "<br> Number of files Failed: ".$fail. "<br><br>";
?>

两个 PHP 代码都是通过另一个 PHP 代码执行的。两个代码都可以正常工作。不幸的是,如果文件很大,第一个和第二个代码不起作用。我认为这是因为第一个代码不适用于大文件,然后第二个代码不起作用。

我认为是因为上传图像需要太长时间,所以代码不起作用。请问我能做什么?

我在 error_log PHP 警告中得到以下信息:POST Content-Length of 12304331 bytes 超出第 0 行 Unknown 中 10485760 字节的限制

4

2 回答 2

2

您当前的 PHP INI 设置为最大上传大小 10mb。

在您的 php ini 中增加上传限制的大小或使用:

ini_set('post_max_size', '64M');
ini_set('upload_max_filesize', '64M');
于 2013-04-14T13:06:51.040 回答
0

您将需要配置upload_max_filesizepost_max_sizememory_limit指令。

于 2013-04-14T13:07:24.560 回答