Re: File Open Prompt?
| From: | Ashley Sheridan | Date: | Sat, 29 Aug 2009 07:16:13 +0000 |
| Subject: | Re: File Open Prompt? | ||
| References: | 1 2 3 4 5 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-297462@lists.php.net to get a copy of this message | ||
On Sat, 2009-08-29 at 09:03 +0200, Ralph Deffke wrote:
> are u shure, u dont send anything out before u send the headers? even one
> space would be too much.
>
> ralph_deffke@yahoo.de
>
> "Dan Shirah" <mrsquash2@gmail.com> wrote in message
>
> news:a16da1ff0908281328k641ea332v25d887c4de5b347c@mail.gmail.com...
> > >
> > > You will need to add some headers to the page to popup the prompt, at
> least
> > > with
> > > these.
> > >
> > > $filename = 'somefile.tif';
> > > $filesize = filesize($filename);
> > >
> > > header('Content-Type: application/force-download');
> > > header('Content-disposition: attachement; filename=' . $filename);
> > > header('Content-length: ' . $filesize);
> > >
> > > Eric
> > >
> > >
> >
> > I don't know what I'm doing wrong. I've tried:
> >
> > header('Content-Description: File Transfer');
> > header('Content-Type: application/force-download');
> > header('Content-Length: ' . filesize($filename));
> > header('Content-Disposition: attachment; filename=' . basename($file));
> > readfile($file);
> > AND
> >
> > if (file_exists($new_file)) {
> > header('Content-Description: File Transfer');
> > header('Content-Type: application/octet-stream');
> > header('Content-Disposition: attachment; filename='.basename($new_file
> > ));
> > header('Content-Transfer-Encoding: binary');
> > header('Expires: 0');
> > header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
> > header('Pragma: public');
> > header('Content-Length: ' . filesize($new_file));
> > ob_clean();
> > flush();
> > readfile($new_file);
> > exit;
> > }
> >
> > But everything I do just sends heiroglyphics to the screen instead of
> giving
> > the download box.
> >
>
>
>
Try putting all of that inside of a headers_sent(){} block. If nothing
is displayed, it means that you've already sent something to the
browser, so the headers have already been sent and the extra ones you
are sending do nothing. This sort of thing is shown in your error log
also.
If you still get the tif displayed as text, then are you sure that the
tif is valid?
Thanks,
Ash
http://www.ashleysheridan.co.uk