2

私は PHP アップロード プログレス バーを実装したいと考えています。私の考えは、1 秒ごとに $_FILES['file']['tmp'] のサイズを取得することです。
しかし、ここでの問題は、ファイルがアップロードされているときに、php.ini で設定された一時ディレクトリにファイルが存在しないが、ファイルが正常にアップロードされ、$_FILES['file']['tmp'] のサイズを取得しようとするとエラーが表示されることです。警告。

<br />
<b>Warning</b>:  filesize() [<a href='function.filesize'>function.filesize</a>]: stat failed for D:\Program Files\webserver\temp\phpDD05.tmp in <b>D:\Program Files\webserver\www\test\upload\uploading.php</b> on line <b>5</b><br />

つまり、ファイルが存在しないと思います。プログレスバーを使用してアップロードするために、このアイデアをどのように収束させることができるか

4

2 に答える 2

0

ファイルは POST リクエストにカプセル化されるため、フォームの外にファイルをアップロードするものと、ファイルを定期的に監視するものが必要です。ajaxアップロードの進行状況バーなど、すでに作成されたソリューションをいくつか提案します

于 2012-03-29T18:54:37.937 に答える
0

このようなことを試してエラーがあるかどうかを確認し、エラーがない場合はファイル サイズを取得できます。

<?php
if ($_FILES["file"]["error"] > 0)
{
  echo "Error: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
}
?>

それはあなたのために何をしますか?

于 2012-03-29T18:45:26.583 に答える