【发布时间】:2018-01-10 13:19:21
【问题描述】:
我正在使用 TCPDF 生成 pdf 文件。
<form method='post'>
<input type='submit' name='create_pdf' class='gs-btn-3' value='Create PDF'/>
</form>
<?php
if (isset($_POST["create_pdf"]))
{
require_once("myPDF/TCPDF/tcpdf.php");
$obj_pdf = new TCPDF('P', PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
$obj_pdf->SetCreator(PDF_CREATOR);
$obj_pdf->SetTitle('Thisi is Serena first PDF example');
$obj_pdf->SetHeaderData('', '', PDF_HEADER_TITLE, PDF_HEADER_STRING);
$obj_pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '',PDF_FONT_SIZE_MAIN));
$obj_pdf->SetFooterFont(Array(PDF_FONT_NAME_DATA, '',PDF_FONT_SIZE_DATA));
$obj_pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
$obj_pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$obj_pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
$obj_pdf->SetMargins(PDF_MARGIN_LEFT, '5', PDF_MARGIN_RIGHT);
$obj_pdf->SetPrintHeader(false);
$obj_pdf->SetPrintFooter(false); //true
$obj_pdf->SetAutoPageBreak(TRUE, 10);
$obj_pdf->SetFont('dejavusans', '', 14);
$obj_pdf->AddPage();
$content = '
<h3 align="center"> Export HTML Table data to PDF using TCPDF in PHP</h3>
<table border="1" cellspacing="6" cellpadding="4">
<tr>
<th width="25%" align="center">Company Name</th>
<th width="25%">Contact</th>
<th width="10%">Address</th>
<th width="10%">Phone</th>
<th width="10%">Modify by</th>
<th width="10%">Modify on</th>
<th width="10%">EDIT</th>
</tr>
if(isset($this->culist) && is_array($this->culist) && sizeOf($this->culist) > 0) {
foreach($this->culist as $key=>$value) {
<tr>
<td style="width: 25%;">
<?php echo $value->companyname; ?>
</td>
<td style="width: 25%;">
<?php echo $value->firstname; ?>
</td>
<td style="width: 10%;">
<?php echo $value->address; ?>
</td>
<td style="width: 10%;">
<?php echo $value->phone; ?>
</td>
<td style="width: 10%;">
<?php echo $value->modified_by; ?>
</td>
<td style="width: 10%;">
<?php echo $value->modified_on; ?>
</td>
</tr>
}
</table>
';
$obj_pdf->WriteHTML($content, true, false, true, false, '');
ob_end_clean();
$obj_pdf->Output('sample.pdf', 'I');
}
?>
有两个错误,
首先是“TCPD ERROR: Some data has been output, can't send PDF file”。我试过“ob_end_clean();” 之前 "$obj_pdf->Output('sample.pdf', 'I');",显示了很多不可读的代码。
其次是生成的表格不是来自上面显示的脚本,而是表格来自视图。
谁能帮帮我?提前致谢。
【问题讨论】:
-
你一定是 serena williams :) 开个玩笑 .. BTW .. 你检查过这个线程 stackoverflow.com/questions/16011050/… 吗?
-
谢谢,我已经看过了,但它不适合我的问题..
-
ok mam .. 只做一件事 .. 而不是发送表格的大 html 数据 .. 只需输入简单的文本并检查它是否工作。
-
放简单的文字是个好主意!!但是生成的页面是视图中的表格。它似乎没有通过 TCPDF php 脚本。实际上,我使用的是 MVC 结构,并将这些脚本放在视图文件中。你知道我应该放在哪里吗?
-
我告诉你放简单文本的原因只是为了调试目的,不管我们的 html 代码还是其他地方有错误。
标签: php html pdf-generation tcpdf