Open it as raw file, for example with the help of "vim".

Tomasz Ignatiuk wrote:
> "File is damaged and it couldn't be repaired" - this shows while I try
> to open it with adobe acrobat/reader. I don;t know how to check it in
> a different way.
>
> 2009/3/24 Fási Gábor <[email protected] <mailto:[email protected]>>
>
>     What's 'broken'? You mean you can't open it with adobe reader/other
>     pdf viewer? If you check the contents of the file, does it look like a
>     valid pdf?
>
>     On Tue, Mar 24, 2009 at 12:51, Tomasz Ignatiuk
>     <[email protected] <mailto:[email protected]>> wrote:
>     >
>     > Hi, I use this code for downloading files. If I download image, it
>     > works, but if I download pdf, after downloading when I try to
>     open it,
>     > it is broken.
>     >
>     >          if (is_file($sciezka))
>     >          {
>     >                                        // Enforce full download
>     and prevent caching
>     >                                      
>      session_cache_limiter('none');
>     >
>     >                                        // No layout needed for
>     file downloads
>     >                                        $this->setLayout(false);
>     >                                      
>      sfConfig::set('sf_web_debug', false);
>     >
>     >                                        // Prepare http headers
>     >                                        $fileType =
>     $file->getFormat()->getNazwa();
>     >
>     >                                        $response =
>     $this->getResponse();
>     >                                      
>      $response->clearHttpHeaders();
>     >                                      
>      $response->setHttpheader('Pragma: public', true);
>     >                                      
>      $response->addCacheControlHttpHeader('Cache-Control', 'must-
>     > revalidate');
>     >                                      
>      $response->setHttpHeader('Expires', 'Sat, 26 Jul 1997 05:00:00
>     > GMT');
>     >                                      
>      $response->setHttpHeader("Last-Modified", gmdate("D, d M Y
>     > H:i:s") . " GMT");
>     >                                      
>      $response->setContentType($fileType,true);
>     >                                      
>      $response->setHttpHeader('Content-Description', 'File Transfer');
>     >                                      
>      $response->setHttpHeader('Content-Transfer-Encoding', 'binary',
>     > true);
>     >                                      
>      $response->setHttpHeader('Content-Length', filesize('' . (string)
>     > utf8_decode($sciezka . '')));
>     >                                      
>      $response->setHttpHeader('Content-Disposition', 'attachment;
>     > filename=' . str_replace(" ", "_", utf8_decode($file-
>     >>getFileNazwaOrginalna())) );
>     >
>     >                                        // Unlock session in
>     order to prevent php session warnings
>     >                                        $this->getUser()->shutdown();
>     >
>     >                                        // Send http headers to
>     user client
>     >                                        $response->sendHttpHeaders();
>     >
>     >                                        // Send file to user client
>     >                                      
>      //$response->setContent(readfile(utf8_decode($sciezka)));
>     >                                      
>      $response->setContent(readfile($sciezka));
>     >                                      
>      //$response->setContent(file_get_contents(utf8_decode($file-
>     >>getPath())));
>     >                                        $response->sendContent();
>     >
>     >                                        // Exit without a template
>     >                                        return sfView::NONE;
>     >
>     >
>     > This line gives a proper mime type
>     > $response->setContentType($fileType, true);
>     >
>     > fileType is taken from DB. These are: application/pdf and image/jpeg
>     >
>     > It is strange because locally on apache on windows it works, but not
>     > on production server. Locally when I upload file its pdf mime
>     type is
>     > application/x-download. On production server it is application/pdf
>     >
>     > Any ideas what is the problem?
>     > >
>     >
>
>
>
>
> >

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"symfony users" 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/symfony-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to