How to download PDF File Generated from TCPDF (PHP) using AJAX (jQuery)?

后端 未结 4 1413
粉色の甜心
粉色の甜心 2021-01-18 09:33

I am using Yii Framework, TCPDF and jQuery to generate a pdf.

The pdf is generated by inputing in a form and submitting it using ajax.

The pdf is created but

相关标签:
4条回答
  • 2021-01-18 09:45

    If the problem is that you are not getting the browser's download dialog for the PDF, then the solution is to do it this way:

    First, redirect the browser (using window.location as the other answers say) to navigate to a special controller action in your application, e.g. with this url: http://your.application.com/download/pdf/filename.pdf.

    Implement the action referenced in the URL like this:

    public function actionPdf() {
        header('Content-Type: application/pdf');
        header('Content-Disposition: attachment; filename="filename.pdf";');
        header('Content-Length: '.filesize('path/to/pdf'));
        readfile('path/to/pdf');
        Yii::app()->end();
    }
    

    This will cause the browser to download the file.

    0 讨论(0)
  • 2021-01-18 09:59

    Not quite, that will cause errors on some browsers, this is the correct way to set the window location.

    window.location.assign( downloadUrlToPdf );
    

    So

    1. Send a request to make the pdf via Ajax to the server
    2. Process and generate the pdf on the server
    3. Return in the Ajax call the url to the file you just made
    4. Use the above code fragment to open a download of said file
    0 讨论(0)
  • 2021-01-18 10:02

    You need to save the PDF to somewhere on your server and then issue window.location = '/url/to/pdf-you-just-saved.pdf'; from your javascript. The users browser will then prompt them to download the PDF file.

    0 讨论(0)
  • 2021-01-18 10:03

    in tcpdf , just pass this argument the Output method:

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

    that's all

    0 讨论(0)
提交回复
热议问题