【问题标题】:PHP while loop to output multiple single PDFs using TCPDFPHP while循环使用TCPDF输出多个单个PDF
【发布时间】:2020-08-25 10:21:16
【问题描述】:

我想在 php while 循环中使用 TCPDF 库创建多个单页 pdf,该循环从 MySQL 表中提取信息。我的代码发布在下面。它适用于一条记录并输出一个 pdf,但在它应该之前结束 while 循环,而另一个 pdf 永远不会输出。我很欣赏任何见解。提前谢谢你。


require_once('tcpdf/tcpdf.php');
require_once('connection.php');


    $sql = "SELECT * FROM tbl_names";
    $result = mysql_query($sql, $conn);
    while($row = mysql_fetch_array($result)){
        $name = $row['name'];

        // create new PDF document
        $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

        $pdf->SetCreator(PDF_CREATOR);

        // add a page
        $pdf->AddPage();

        $html = '<div style="text-align:center"><h1>Title' .$name. '</h1></div>';

        $pdf->writeHTML($html, true, false, true, false, '');


        // output the HTML content
        $pdf->writeHTML($html, true, false, true, false, '');

        // reset pointer to the last page
        $pdf->lastPage();


        $pdf->Output("$name.pdf", 'D');
    }

【问题讨论】:

  • 警告: mysql_* 扩展自 PHP 5.5.0 起已弃用,自 PHP 7.0.0 起已被删除。相反,应该使用mysqliPDO_MySQL 扩展名。在选择 MySQL API 时,另请参阅 MySQL API Overview 以获得更多帮助。
  • 您找到解决方案了吗?我也在寻找同样的东西。

标签: php html mysql loops tcpdf


【解决方案1】:

我不认为 TCPDF 可以同时创建多个 PDF。 建议改用 PHP 创建循环或在单个 PDF 中创建多个页面。

因为$pdf->输出应该放在循环之外。 否则,它将创建单个页面然后只下载

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-02
    • 1970-01-01
    • 2019-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-09
    相关资源
    最近更新 更多