Here is my code:
pdfDir is defined constant fyi
function download($id = null) {
if (!$id && empty($this->data)) {
$this->Session->setFlash(__('Invalid Invoice', true));
$this->redirect(array('action'=>'index'));
}
Configure::write('debug', 0);
$file = $this->Invoice->findById($id);
if (file_exists(pdfDir.$file['Invoice']['file_name'])) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename
(pdfDir.$file['Invoice']['file_name']));
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(pdfDir.$file['Invoice']
['file_name']));
ob_clean();
flush();
readfile(pdfDir.$file['Invoice']['file_name']);
exit;
} else {
$this->Session->setFlash(__('File Does Not Exist',
true));
$this->redirect(array('action'=>'index'));
}
}
On Jul 24, 12:44 am, Vijay <[email protected]> wrote:
> Hello All,
>
> I uploads the files to webroot/uploads folder from the file uploading
> component.
>
> Now I am trying to download that file from webroot/uploads folder but
> it is giving me 0 byte file.
>
> Code is as follows,
>
> function admin_download($id)
> {
> $this->adminchecksession();
> // you'll want to check the login status here ...
>
> $result = $this->Application->findById($id);
>
> Configure::write('debug', 0);
> $this->view = 'Media';
>
> /* MediaView is really irritating
> */
> //$name = $result['Application']['resume'];
>
> $ext = explode("." ,$result['Application']['resume']);
>
> $params = array(
> 'name' => $ext[0],
> 'download' => true,
> 'extension' => $ext[1],
> 'path' => APP."webroot/uploads".DS,
> 'mimeType' => array($result['Application']
> ['type'])
> );
>
> $this->set($params);
>
> }
>
> Please help me on this.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"CakePHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---