Automatically opening pdf files stored in a bytea field

From: Adam Witney <awitney(at)sgul(dot)ac(dot)uk>
To: pgsql-php <pgsql-php(at)postgresql(dot)org>
Subject: Automatically opening pdf files stored in a bytea field
Date: 2005-10-11 10:58:30
Message-ID: BF715966.4EE66%awitney@sgul.ac.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-php


Hi,

This may be off-topic as regards the database aspect, but im sure people on
this list must come across this problem.

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

$sql_data = "SELECT filename, file_data FROM dba_suppl WHERE dba_suppl_id =
".$dba_suppl_id.";";

if($stat2 = execute($sql_data))
{
if($rows = pg_numrows($stat2))
{
$data = pg_fetch_array($stat2, 0);

header("Content-type: application/pdf");
header('Content-Disposition: attachment;
filename="'.$data['filename'].'"');

echo pg_unescape_bytea($data['file_data']);
}
}

If I click it it opens acrobat but acrobat gives an error. If I right click
the link and save to disk I can open the file from there no problem. As I
say, on my mac and on FireFox on windows it does the right thing... Its just
IE on windows!

Is there something I am forgetting to do here? Or is it just IE and there is
no way around it??

Thanks for any help

Adam

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

Responses

Browse pgsql-php by date

  From Date Subject
Next Message Frank Bax 2005-10-11 11:30:30 Re: Automatically opening pdf files stored in a bytea
Previous Message Jim C. Nasby 2005-10-09 18:07:33 Re: Triggers problem