Re: Automatically opening pdf files stored in a bytea

From: Adam Witney <awitney(at)sgul(dot)ac(dot)uk>
To: Frank Bax <fbax(at)sympatico(dot)ca>, pgsql-php <pgsql-php(at)postgresql(dot)org>
Subject: Re: Automatically opening pdf files stored in a bytea
Date: 2005-10-11 19:47:38
Message-ID: BF71D56A.4EF41%awitney@sgul.ac.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-php

On 11/10/05 12:30 pm, "Frank Bax" <fbax(at)sympatico(dot)ca> wrote:

> At 06:58 AM 10/11/05, Adam Witney wrote:
>> I have PDF files stored in a bytea field in the database and I want to all
>> the user to click a link on the web page and have the file automatically
>> opened in acrobat (or whatever they have set to read the pdf). It works for
>> most browsers except for in Internet Explorer on windows (surprise
>> surprise!). Here is my code
>>
>> header("Content-type: application/pdf");
>> header('Content-Disposition: attachment;
>> filename="'.$data['filename'].'"');
>
>
> Here's mine...
> if(isset($_SERVER['HTTP_USER_AGENT']) &&
> strpos($_SERVER['HTTP_USER_AGENT'],'MSIE'))
> header('Content-Type: application/force-download');
> else
> header('Content-Type: application/octet-stream');
> header('Content-Length: '.strlen($this->buffer));
> header('Content-disposition: attachment; filename="'.$name.'"');
>
>
> But on a some systems (both Win98 & WinXP), user must save/open instead of
> open directly - haven't figured out why yet.

From the link sent by Volkan, adding these header lines fixes the problem

header("Pragma: public");
header("Expires: 0");
header("Cache-Control: private");

Thanks for the help guys

Adam

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

In response to

Browse pgsql-php by date

  From Date Subject
Next Message Christopher Kings-Lynne 2005-10-12 01:29:04 Re: Automatically opening pdf files stored in a bytea field
Previous Message Volkan YAZICI 2005-10-11 17:56:41 Re: Automatically opening pdf files stored in a bytea field