On 27/07/10 14:16, Peter Lind wrote:
2010/7/27 Nilesh Govindarajan<li...@itech7.com>:
2010/7/27 Dušan Novaković<ndu...@gmail.com>:
Hello,

so when I'm sending the array to model it's like this:

$fp = fopen(INVOICE_PATH.date('Y-m-d').DS.$pdfName, "r");
$pdfContent             = array(
                                        'file'  =>        
base64_encode(fread($fp,
filesize(INVOICE_PATH.date('Y-m-d').DS.$pdfName))),
                                        'name'  =>        $pdfName,
                                        'size'  =>        
filesize(INVOICE_PATH.date('Y-m-d').DS.$pdfName),
                                        'type'  =>        
mime_content_type(INVOICE_PATH.date('Y-m-d').DS.$pdfName)
                                        );
fclose($fp);

so the data in db are ok, and this type is application/pdf.

And when I'm getting data, I get the array like this:

$file = Array
(
    [id] =>  2
    [file] =>VBERi0xLjM...<= here file is base64_encode()
    [file_size] =>  2204
    [file_type] =>  application/pdf
    [file_name] =>  2_file.pdf
)

Headers:

header("Content-length: ".$file['file_size']);
header("Content-type: ".$file['file_type']);
header("Content-Disposition: attachment; filename= ".$file['file_name']);
echo base64_decode($file['file']);


So, mime looks ok, but still... not working :-(




--
mob: + 46 70 044 9432
web: http://novakovicdusan.com

Please consider the environment before printing this email.


Are you sure that you need Content-Disposition? Try removing that. I
think that's used only in emails (Correct me if I'm wrong).

You're wrong. Content-Disposition tells the browser how to handle the
content - in this case, the browser will download the file instead of
displaying it.

Regards
Peter


I think you need to be careful about quoting the file name in the Content-Disposition header: something like

header('Content-Disposition: attachment; filename="'.$filename.'.xml"');

seems to be the right quoting - the filename needs to be in double-quotes

--
Peter Ford, Developer                 phone: 01580 893333 fax: 01580 893399
Justcroft International Ltd.                              www.justcroft.com
Justcroft House, High Street, Staplehurst, Kent   TN12 0AH   United Kingdom
Registered in England and Wales: 2297906
Registered office: Stag Gates House, 63/64 The Avenue, Southampton SO17 1XS

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

Reply via email to