【问题标题】:Generating attendance list in PDF using PHP使用 PHP 生成 PDF 格式的考勤列表
【发布时间】:2009-02-14 19:26:07
【问题描述】:

我想使用 PHP 从学生的 PDF 数据库中创建出勤列表。我希望将列 student.name、student_id、student_rollno 和用于签名的列作为 pdf 表制作。我该怎么做?

【问题讨论】:

  • 也许发布一些您迄今为止尝试过的示例代码,您会更快得到答案。

标签: php pdf


【解决方案1】:

嗯,这是一个有点笼统的问题,但我至少会考虑 PDF 部分并提供以下 PHP 类:http://www.tcpdf.org

此类无需在您的服务器上启用 pdf 扩展即可工作,这是一个巨大的好处。但除此之外,它还支持简单的 HTML,包括“table”标签。如果您了解 HTML,则可以根据这些知识生成简单的 PDF。

一旦您从数据库中检索到数据,实际上只需组装一个 HTML 字符串即可:

$html = '<table>';
foreach ($results as $student) {
     $html .= '<tr><td>'.$student->name.'</td></tr>';
}
$html .= '</table>';

$tcpdf->writeHtml($html); 

...等等。

可以在此处找到 writeHtml 方法的完整示例: http://www.tecnick.com/pagefiles/tcpdf/example_006.phps

如何检索数据在很大程度上取决于您的项目。

【讨论】:

  • 这是一种快速简便的方法 - 我已经使用过这种方法并且它有效。
【解决方案2】:

我推荐 TCPDF。 http://www.tecnick.com/public/code/cp_dpage.php?aiocp_dp=tcpdf

这是一个将 html 转换为 pdf 的库,因此您可以在 php 中运行 db 查询并以 html 输出结果。您可以参考生成带有 tcpdf 函数的 html 的 php 文件。

在此处查看示例: http://www.tecnick.com/public/code/cp_dpage.php?aiocp_dp=tcpdf_examples

///////////////////

您还可以使用 DOMPDF: http://www.digitaljunkies.ca/dompdf/ 它比 tcpdf 更新一点,使用起来更容易一些

【讨论】:

    【解决方案3】:

    上次我用 PHP 构建 PDF 输出模块时,我使用了 LaTeX。漂亮的输出,易于重新设置样式。

    【讨论】:

      【解决方案4】:

      您可以使用 php 的 pdflib 扩展来执行此操作。

      查看this tutorial了解更多详情。

      【讨论】:

        【解决方案5】:

        您可以在 PHP 中使用 PDF 库

        您将需要使用这些功能

        string PDF_fit_table  ( resource $pdfdoc  , int $table  , float $llx  , float $lly  , float $urx  , float $ury  , string $optlist  )
        
        int PDF_add_table_cell  ( resource $pdfdoc  , int $table  , int $column  , int $row  , string $text  , string $optlist  )
        

        你也可以试试FPDF,看看这个tutorial。基本上,您需要以表格的形式输出您的数据库结果。

        其他选择: TCPDFEZPDF

        【讨论】:

          【解决方案6】:

          选择 FPDF,http://www.fpdf.org/ - 那里最好的东西...

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2021-08-01
            • 1970-01-01
            • 1970-01-01
            • 2011-08-10
            • 1970-01-01
            • 2013-11-20
            • 2012-04-01
            相关资源
            最近更新 更多