【发布时间】:2017-08-21 00:13:47
【问题描述】:
每当客户要求提供一些记录的硬拷贝时,我想在我的数据库中为我的表打印一个 PDF 文件。不幸的是,当我打印记录或将其转换为 pdf 格式时,它一直说:
localhost 当前无法处理此请求。 HTTP 错误 500
即使我摆脱了表格并尝试在其上放置任何 html 元素。
代码如下:
<?php
//index.php
//include autoloader
require_once '../autoload.inc.php';
// reference the Dompdf namespace
use Dompdf\Dompdf;
//initialize dompdf class
$document = new Dompdf();
$html = '
<style>
table {
font-family: arial, sans-serif;
border-collapse: collapse;
width: 100%;
}
td, th {
border: 1px solid #dddddd;
text-align: left;
padding: 8px;
}
tr:nth-child(even) {
background-color: #dddddd;
}
</style>
<table>
<tr>
<th>Company</th>
<th>Contact</th>
<th>Country</th>
</tr>
<tr>
<td>Alfreds Futterkiste</td>
<td>Maria Anders</td>
<td>Germany</td>
</tr>
<tr>
<td>Centro comercial Moctezuma</td>
<td>Francisco Chang</td>
<td>Mexico</td>
</tr>
<tr>
<td>Ernst Handel</td>
<td>Roland Mendel</td>
<td>Austria</td>
</tr>
<tr>
<td>Island Trading</td>
<td>Helen Bennett</td>
<td>UK</td>
</tr>
<tr>
<td>Laughing Bacchus Winecellars</td>
<td>Yoshi Tannamuri</td>
<td>Canada</td>
</tr>
<tr>
<td>Magazzini Alimentari Riuniti</td>
<td>Giovanni Rovelli</td>
<td>Italy</td>
</tr>
</table>
';
//$document->loadHtml($html);
$page = file_get_contents("cat.html");
//$document->loadHtml($page);
$connect = mysqli_connect("localhost", "root", "", "pdf");
$query = "
SELECT *
FROM preschoolers
";
$result = mysqli_query($connect, $query);
$output = "
<style>
table {
font-family: arial, sans-serif;
border-collapse: collapse;
width: 100%;
}
td, th {
border: 1px solid #dddddd;
text-align: left;
padding: 8px;
}
tr:nth-child(even) {
background-color: #dddddd;
}
</style>
<table>
<tr>
<th>ID</th>
<th>Name</th>
<th>Interp</th>
</tr>
";
while($row = mysqli_fetch_array($result))
{
$output .= '
<tr>
<td>'.$row["p_id"].'</td>
<td>'.$row["last_name"].'</td>
<td>$'.$row["interp"].'</td>
</tr>
';
}
$output .= '</table>';
//echo $output;
$document->loadHtml($output);
//set page size and orientation
$document->setPaper('A4', 'landscape');
//Render the HTML as PDF
$document->render();
//Get output of generated pdf in Browser
$document->stream("Webslesson", array("Attachment"=>0));
//1 = Download
//0 = Preview
?>
我正在使用 DOMPDF。 寻求帮助。 提前致谢。
【问题讨论】:
-
如 cmets 中所述,这将有助于查看错误是什么。 500 错误来自您的 Web 服务器,表明底层技术遇到了致命错误。检查您的 PHP 日志。