Hello Sebastian,

Tuesday, December 14, 2004, 4:19:31 PM, you wrote:

S> header("Content-type: application/octet-stream");
S> header("Content-disposition: attachment; filename=" . $file['filename']);
S> header("Content-transfer-encoding: binary");
S> header("Content-length: " . filesize($file['path'] . $file['filename']));

I use something almost identical, except I upper-case the second words
(Content-Type, Content-Disposition, etc). Not that I've found a
browser in active use yet that cares less, but there we go.

I'd fclose() when done, and no need to exit() - it's the last line of
your script anyway.

I hope you have some good data validation going on too :)

S> is this the most practical way of doing it? i don't want to display
S> file location.. the script seems to be working okay, but i was just

It is the way to do it, yes. You may get some varying suggestions re:
the correct headers to use though. But what you have will actually
work just fine (as you've found).

S> also, is it possible to insert a txt file on the fly if the file
S> they're downloading is a ZIP file? if so, any ideas how?

No, you cannot interrupt the stream. Or do anything after it for that
matter - you are "simulating" an HTTP request for a file, that is what
you're sending back. There is no way to inject something else into
this single transmission. Think of another way around it.

Best regards,

Richard Davey
-- 
 http://www.launchcode.co.uk - PHP Development Services
 "I am not young enough to know everything." - Oscar Wilde

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to