Re: Upload Progress Meter Patch
| From: | Curt Zirzow | Date: | Wed, 10 Nov 2004 15:54:26 +0000 |
| Subject: | Re: Upload Progress Meter Patch | ||
| References: | 1 2 3 4 5 6 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-13807@lists.php.net to get a copy of this message | ||
* Thus wrote Klaus Reimer:
> Joe Orton wrote:
> >>It is a user interface problem, so it should be done there.
> >It's really the only place it can be done safely
>
> Web browsers don't offer any API to allow a client-side progress bar.
> The only client-side solution I know of is ActiveX and Java and these
> solutions are not available to all users.
Actually, the little blue bar in the lower right corner is a
standard place for the progress bar. Unfortantly It isn't as
'friendly'.
> >sending an HTTP
> >response before the request body has been entirely read is fundamentally
> >risky, too: HTTP clients are not required to read response data
> >concurrently to sending request bodies, so sending the upload meter
> >stuff can fill the TCP send buffer server-side and deadlock the
> >connection for a compliant HTTP client.
>
> Sending the upload meter stuff to the client while the client still
> uploads? In the same request? I have the bad feeling that the idea
> behind the progress meter bar was not fully understood. It's working
> like this:
I'm aware of how the patch you originally proposed works. The
issue I see is if we're making changes to how uploads work within
php, It would be nice to be able to, easily, do other things like:
- authenticate a user before accepting a download
- stream the download through an encryption algorithm.
>
> So ne need to send a response while the request is still read. The whole
> scenario can also work without Javascript if frames/iframes are used to
> separate the upload from the progress bar. But even this does not
> matter. It's all up to the user how it's implemented. All the dirty work
> can be done in an external PHP Extension and in PHP code. Only this
> little patch I sent a few days ago is needed in PHP itself.
You can provide a progress bar, as php stands right now, without any
patch.
Curt
--
First, let me assure you that this is not one of those shady pyramid schemes
you've been hearing about. No, sir. Our model is the trapezoid!