2010-06-12 85 views

回答

4

只是存储和更新服务器端会话的进度,并使用来自客户端的重复阿贾克斯调用来获取服务器端会话的当前进度,直到它获得100%。长话短说,这里有一个明确的教程如何使用PHP和jQuery:How to build an ajax progress bar with jQuery and PHP

然后服务器端部分,你至少需要PHP 5.2为这个与PECL Uploadprogress extension。你可以在这里找到一个关于它的博客:PECL Uploadprogress example。 0123.net在php.net上也有帮助。

+0

您可以使用PHP在上传过程中更新该变量吗? – 2010-06-12 20:14:17

+0

@Rubens:我知道我忘记了一些东西,我更新了答案。在Java/.NET中这已经很平常了,但在PHP中,直到去年PECL Uploadprogress出现之前它一直不被支持。 – BalusC 2010-06-12 20:34:36

+0

太棒了。这是不可能的,不久前:) – 2010-06-13 18:40:54

-3

要获取文件上传进度,您应该使用Flash。有更多信息的教程可以在here找到。请注意,这是使用.NET,但不是PHP。

0

如果你不想使用像swfupload这样的已经预建好的,你必须准备好你的动作脚本,然后使用外部接口api来使它与jQuery进行交谈。

0

基本上,您需要控制在某个时间段内发送多少数据。由于您不控制浏览器数据传输,因此您的浏览器无法从您的文件中读取数据,您无法使用纯JavaScript执行此操作。

您需要一些第三方控件,如Silverlight,Flash或Java applet。使用它们,您将授予文件系统访问权限,以便您可以控制如何阅读源文件。所以,为了构建你的进度条,你只需要对你的服务器应用程序进行几次HTTP调用,发送你的源文件。

相关问题