0

CakePHP 1.3 と TCPDF を使用して PDF ファイルを印刷していますprint_pdf.ctp。この印刷の後、ページをリファラーにリダイレクトするのに問題があります。コントローラー アクションのコメント セクションに到達していません。これを管理するにはどうすればよいですか?

print_pdf()ボタンにリンクされていることに注意してください。そのため、ユーザーはページをロードし、アクションにリンクされた「印刷」ボタンをprint_pdf押します。このボタンをクリックすると、PDF ファイルが印刷されます。リダイレクトしたい理由は、print_pdfアクションが一部のデータを更新し、この更新を反映するためにボタンが配置されているページを更新する必要があるためです。

コントローラ:

// This action is linked to a button
function print_pdf() {
    ...    
    $this->layout = 'pdf'; //this will use the pdf.ctp layout
    $this->render();   

    // Line below are not executed
    ...
    $this->redirect($this->referer());
}
4

1 に答える 1

0

あなたが何をしようとしているのか、まだ完全には理解できていません。別のページにリダイレクトして情報を保存し、すぐに PDF をその人に表示しようとしていますか?

PDF関数内から保存したものを実行してみませんか:

// This action is linked to a button
function print_pdf() {
    ...
    //$this->redirect($this->referer());
    //Put whatever you were going to redirect to before the render.  Instead of  redirecting just run the thing as part of this function.
    ...    
    $this->layout = 'pdf'; //this will use the pdf.ctp layout
    // Line below are not executed
    $this->render();     
}

$this->render(); コントローラーをエスケープして、ビューに直接移動する必要があります。後に何も置くことはできません。ボタンを使用してページを変更する場合は、レンダリングの前に変更できます。

于 2013-02-27T19:35:31.353 に答える