0

ファイルのアップロードの問題で立ち往生しています。

答えを探しましたが、「post_max_size と upload_max_filesize を増やす」提案しか見つかりませんでした。それは私にとってはうまくいきません。

大きなファイルをアップロードできません (約 20MB) 8MB より小さいファイルは正常に動作しますが、それより大きいファイルは動作しないようです... エラー メッセージは表示されませんが、アップロードが終了すると画面が空白になり、ファイルが表示されますアップロード ディレクトリに見つかりません。以下は私の php.ini 設定と私の環境です。

max_input_time -1
max_execution_time 600
memory_limit 512M
upload_max_filesize 100M
post_max_size 100M

それで、これで何が起こるかについてのアイデアはありますか?私は本当にここで立ち往生しています.この問題を解決することはできません.助けてください.

4

2 に答える 2

0

ファイルのアップロードにはこのコードを使用します

<?php
    $allowedExts = array("pdf", "mp3");
    $extension = end(explode(".", $_FILES["file"]["name"]));
    if ((($_FILES["file"]["type"] == "pdf")
    || ($_FILES["file"]["type"] == "mp3")
    && ($_FILES["file"]["size"] < 20000)
    && in_array($extension, $allowedExts))
      {
      if ($_FILES["file"]["error"] > 0)
        {
            echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
        }
      else
        {
            echo "Upload: " . $_FILES["file"]["name"] . "<br />";
            echo "Type: " . $_FILES["file"]["type"] . "<br />";
            echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
            echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
            if (file_exists("upload/" . $_FILES["file"]["name"]))
              {
                  echo $_FILES["file"]["name"] . " already exists. ";
              }
            else
              {
                  move_uploaded_file($_FILES["file"]["tmp_name"],
                  "upload/" . $_FILES["file"]["name"]);
                  echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
              }
        }
      }
    else
      {
      echo "Invalid file";
      }
    ?>
于 2012-11-09T06:57:40.670 に答える
0
$_FILES["file"]["size"] < 20000 

20000は約です。20MBではなく20KB

于 2012-11-09T07:27:54.587 に答える