2010-11-19 2 views
3

다음 코드를 사용하여 FPDF로 PDF 문서를 저장하고 있습니다 ...FPDF output()은 html 확장자로 파일 저장

$pdf->Output('doc.pdf','D'); 

... 그러나 'doc.pdf.html'로 저장합니다.

왜 html 확장자를 추가합니까? ?

+0

나는 문제를 줄였습니다. Safari 및 Chrome에서만 발생합니다. Firefox는 완벽하게 작동합니다. – Chad

답변

11

필자의 경우이 문제는 PDF를 echo-out 한 직후에 스크립트를 종료하지 못한다는 것이 었습니다. 나는 프레임 워크를 사용하여 문제를 일으키는 것을 끝내게했다. 그래서 "exit"문을 추가하면 수정해야합니다.

+0

감사합니다. @Chad 나는이 문제를 정확히 처리했으며 해결했습니다. –

0

그것은 '.html 중에서'확장자를 추가하지 않습니다

소스 코드 :

case 'D': 
    //Download file 
    if(ob_get_length()) 
     $this->Error('Some data has already been output, can\'t send PDF file'); 
    header('Content-Type: application/x-download'); 
    if(headers_sent()) 
     $this->Error('Some data has already been output, can\'t send PDF file'); 
    header('Content-Length: '.strlen($this->buffer)); 
    header('Content-Disposition: attachment; filename="'.$name.'"'); 
    header('Cache-Control: private, max-age=0, must-revalidate'); 
    header('Pragma: public'); 
    ini_set('zlib.output_compression','0'); 
    echo $this->buffer; 
break; 

그래서 문제는 다른 곳에서해야합니다.

+0

나는 실제로 퍼팅하는 $ 이름이 .html이 아닌 .pdf로 끝나는 것을 알고 있습니다. – Chad