我有一个脚本,它从html页面生成PDF。我使用html2pdf
来实现这一目标。当我运行我的代码时,其中一个会话变量(负责乘以页数)在它到达PDF之前被清理,当我第二次运行它时它找到变量并且它生成了适当数量的页面但是上一个过程(虽然这次我给了lbl文本框中不同的编号)。我认为当我使用html2pdf
时,它与缓冲区有关,但我不知道如何克服这个问题。还有可能覆盖相同的PDF,因为我必须在生成新PDF之前强制删除它吗?
<?php
if (isset($_POST['lbl'])) {
$file = 'test.pdf';
if(file_exists($file)){
unlink('test.pdf');
}
include(root . '/barcodeGen.php');
include(root . '/pdfGen.php');
$labelNo = $_POST['lbl'];
$_SESSION['labelNo'] = $labelNo; //this variable is cleaned before it gets to labels.php (which is html page that is converted to pdf)
}
?>
pdfGen.php
<?php
ob_start();
include(root .'/labels.php');
$content = ob_get_clean();
// convert to PDF
require_once(root . '/html2pdf.class.php');
try {
$html2pdf = new HTML2PDF('P', '150x200', 'en', true, 'UTF-8', array(2, 2, 2, 2));
$html2pdf->pdf->SetDisplayMode('fullpage');
$html2pdf->writeHTML($content);
$html2pdf->Output('test.pdf', 'F');
}
catch(HTML2PDF_exception $e) {
echo $e;
exit;
}
?>
labels.php的一部分
<?php
$uname = $_SESSION['uname'];
$qcode = $_SESSION['qcode'];
$quantity = $_SESSION['quantity'];
$start_date = $_SESSION['date'];
$barcode = $_SESSION['barcode'];
$labelNo = $_SESSION['labelNo'];
echo $labelNo;
?>
错误是: 注意:未定义的索引:第8行的C:\ wamp \ www \ dev \ labels.php中的labelNo