如何使用$ _FILES获取上传进度?

时间:2013-03-19 09:47:22

标签: php javascript jquery html ajax

HTML:     

                        <input type="file" value="choose file" name="file[]" multiple="multiple"/><br/>
                        <input type="submit" class="submit" value="confirm" />
                        <input type="hidden" name="uploadFiles" />

</form>

PHP:

if (isset($_POST['uploadFiles'])) {
  $fileCount = count($_FILES["file"]["name"]);
  for ($i = 0 ; $i < $fileCount ; $i++ ) {
      checking......
       move_uploaded_file($_FILES["file"]["tmp_name"][$i],$fileName);
  }
}

目前我正在使用上述方式上传文件,我发现Jquery UI提供了进度条功能,但我必须提供上传状态。因此,我可以选择什么方法来获得状态?

2 个答案:

答案 0 :(得分:2)

我的建议是下载一个已经构建的ajax文件上传脚本并对其进行一些研究,因为它们作为回复粘贴非常复杂。

我刚刚看了一下我的脚本,看起来它实际上是在JS方面的进展,而不是在php中。

如果您已升级到php 5.4,则可以使用

http://www.php.net/manual/en/session.upload-progress.php

答案 1 :(得分:1)

如果你有PHP 5.4,你可以使用这个方法。 查看php网站上的信息:http://php.net/manual/en/session.upload-progress.php

如果你不是PHP 5.4,可以用APC做同样的事情 看看这个:http://www.ibm.com/developerworks/library/os-php-v525/index.html

然而,许多jQuery插件使用嵌入式闪存,他们可以从中检索信息。 如上所述:Uploadify