2012-10-04 59 views
0

你好我的網站上有一些pdf文件,用戶可以下載,但問題是當我們下載這些pdf文件並嘗試打開pdf時出現錯誤「打開文件。文件已損壞,無法修復「,但在我的本地系統中工作正常。 請指引我,這裏是我的代碼pdf文檔下載時出錯

function download_pdf($parameters) 
{ 

    $final_link = "$parameters"; 
    $path = strtolower($final_link); 
    $file = "$path"; 

     if (file_exists($file)) { 
      header('Content-Description: File Transfer'); 
      header('Content-Type: application/octet-stream'); 
      header('Content-Disposition: attachment;  filename='.basename($file)); 
      header('Content-Transfer-Encoding: binary'); 
      header('Expires: 0'); 
      header('Cache-Control: must-revalidate'); 
      header('Pragma: public'); 
      header('Content-Length: ' . filesize($file)); 
      ob_clean(); 
      flush(); 
      readfile($file); 
      exit; 
     } 
     else 
     { 
      //echo "file do not exist"; 
      redirect('site/file_does_not_exist'); 
      //$data['main_content'] = 'not_found'; 
      //$this->load->view('includes/template',$data); 
     } 
} 

回答

0

使用這個,而不是嘗試:

... 
header('Content-Type: application/pdf'); 
... 

Internet media types in wikipedia:

application/pdf: Portable Document Format 

,並且確保該文件名的擴展名」。 PDF格式」。