我是一个新程序员,你知道的。
$pdf = new Pdf("./Field Sheets Fill-In HOUSE v2.1.pdf");
$pdf->fillForm($data)
->saveAs('./completed/' . $filename);
$checklistPdf = new Pdf("./Checklist - HOUSE.pdf");
$checklistPdf->fillForm($data)
->saveAs('./checklistCompleted/' . $checklistFilename);
// if ($_SESSION['mainInspector'] == 'rick' || $_SESSION['mainInspector'] == 'Rick') {
// $rickScopePdf = new Pdf("./Scope and Terms RICK");
// $pdf->fillForm($data)
// ->saveAs('./scopeCompleted/' . $scopeFilename);
// } else if ($_SESSION['mainInspector'] == 'joey' || $_SESSION['mainInspector'] == 'Joey') {
// $joeyScopePdf = new Pdf("./Scope and Terms JOEY");
// $pdf->fillForm($data)
// ->saveAs('./scopeCompleted/' . $scopeFilename);
// } else {
// echo 'error with scope.';
// };
在上面的代码中,您可以看到未注释的部分采用了我指定的文件,例如“Field Sheets Fill-in ...”和“Checklist - HOUSE.pdf”,使用 HTML 表单数据填充 PDF 并保存它在特定位置作为特定文件名。
在注释掉的部分,我创建了一个 if 语句来尝试让它根据提交的 html 数据选择要填充的 .pdf。
换句话说,如果为 var 'mainInspector' 输入了 'Rick' 或 'rick',我希望它选择 PDF 文件 'Scope and Terms RICK'。如果输入了“Joey”或“joey”,我希望它选择 PDF 的“范围和条款 JOEY”。否则,我希望它回显“错误...”。
我正在使用 PDFtk 来完成整个工作,下面的代码可以在一个类中找到。(当然,我真的不知道一个类是什么或为什么它是必要的)
还要注意的是,其他一切,例如未注释的代码,都可以正常工作。我刚刚得到了大约 4 个不同的实例,我希望能够根据带有 if 语句或类似内容的表单数据来选择特定文件。
任何指导将不胜感激。
***** 未注释掉时出现的错误信息如下:
如果我取消注释并尝试运行它,它会引发以下错误消息。我不知道为什么。
致命错误:未捕获的异常:操作已在 C:\Users\ansba\Desktop\HTML 中执行到 PDF\vendor\mikehaertl\php-pdftk\src\Command.php:246 堆栈跟踪:#0 C:\Users\ansba \Desktop\HTML 到 PDF\vendor\mikehaertl\php-pdftk\src\Command.php(90): mikehaertl\pdftk\Command->checkExecutionStatus() #1 C:\Users\ansba\Desktop\HTML 到 PDF\vendor \mikehaertl\php-pdftk\src\Pdf.php(277): mikehaertl\pdftk\Command->setOperation('fill_form') #2 C:\Users\ansba\Desktop\HTML 到 PDF\classes\GeneratePDF.php( 31): mikehaertl\pdftk\Pdf->fillForm(对象(mikehaertl\pdftk\XfdfFile)) #3 C:\Users\ansba\Desktop\HTML to PDF\generate.php(124): Classes\GeneratePDF->generate( Array) #4 {main} 在 C:\Users\ansba\Desktop\HTML 中抛出到 PDF\vendor\mikehaertl\php-pdftk\src\Command.php 的第 246 行