|
Posted by David Gillen on 11/02/06 14:24
An noise sounding like Adrian said:
> Using:
> Mysql 5.0.15
> php 5.1.6
> apache 2.2.3
>
> I am trying to create a download link for various pdfs which I have stored in a
> mysql DB.
>
> I am having trouble with the header fields when clicking the link.
>
> Here is the code that sends the pdf called using
><a href="download.php?id=4">Blah</a>
>
> Output is delayed from php.ini (output_buffering = 4096)
>
> What http headers should I be sending.
>
header("Content-disposition: application/pdf");
Might have incorrect mime type, but you should be setting that header.
D.
> This works most of the time like this, but in IE6 I get few strange results
> sometimes.
>
> 1. Clicking on a new page after downloading the pdf - the page is blank unless I
> refresh
> 2. The URL in the address bar does not update even though the page does.
> 3. If I leave out the Content_Disposition header and set the Content-Type:
> application/pdf. The browser just displays the PDF as text.
>
><?php
> include($_SERVER["DOCUMENT_ROOT"] . "/../php/common.inc");
> include($_SERVER["DOCUMENT_ROOT"] . "/../php/prepend.php");
>
> $db=new Interlex_DB;
>
> if(isset($_GET["id"]))
> {
> $query=sprintf("SELECT pdf, filename, length(pdf) AS len FROM broadsheets
> WHERE broadsheet_id='%d' AND active=1", $_GET["id"]);
> $db->query($query);
> if($db->next_record())
> {
> if(!headers_sent())
> {
> header("Accept-Ranges: bytes");
> header("Content-Transfer-Encoding: Binary");
> header("Content-Type: application/force-download");
> header(sprintf("Content-Length: %d", $db->f("len")));
> header(sprintf("Content-Disposition: inline; filename=\"%s\"",
> $db->f(filename)));
> echo $db->f("pdf");
> //exit;
> }
> }
> }
> ?>
>
> --
>
> Adrian
>
> Think you know a language? Post to comp.lang... and find out!
--
/(bb|[^b]{2})/
Trees with square roots don't have very natural logs.
What's the difference between ignorance and apathy? Who knows? Who cares?
Navigation:
[Reply to this message]
|