<?php
require_once("connection.php");
$result = mysql_query("SELECT * FROM personal_details");
$header = mysql_query("SELECT `COLUMN_NAME`
FROM `INFORMATION_SCHEMA`.`COLUMNS`
WHERE `TABLE_SCHEMA`='unania'
AND `TABLE_NAME`='personal_details'");
require('fpdf.php');
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',12);
foreach($header as $heading) {
foreach($heading as $column_heading)
$pdf->Cell(90,12,$column_heading,1);
}
foreach($result as $row) {
$pdf->SetFont('Arial','',12);
$pdf->Ln();
foreach($row as $column)
$pdf->Cell(90,12,$column,1);
}
$pdf->Output();
?>
上面的代码在运行时输出了一个空白的 PDF 文档,有什么问题吗,是不是我使用的是过程式 mysql 而不是 OOP。但是,我需要尽快找到解决方案。
最佳答案
我花时间用 pdo 为您制作了一个小样本。 不知何故,您的错误没有显示在您的本地主机系统中。你必须分析这个。这是一个对我有用的示例:
<?php
require('fpdf.php');
$db = new PDO('mysql:host=localhost;dbname=test;charset=utf8', 'root', '');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$colNames = array();
foreach($db->query("SELECT * FROM mytest") as $row2) {
echo $row2['id'].' '.$row2['name'];
}
$result = $db->query("SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='test' AND TABLE_NAME='mytest'");
foreach($result as $row) {
$colNames[] = $row["COLUMN_NAME"];
}
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetDisplayMode(real,'default');
$pdf->SetFont('Arial','B',12);
$pdf->SetTextColor(50,60,100);
$pdf->SetXY(50,20);
$pdf->SetDrawColor(50,60,100);
$pdf->Cell(100,10,'Tabledata MyTest',1,0,'C',0);
$pdf->Ln();
$pdf->Ln();
foreach($colNames as $colName) {
$pdf->Cell(90,12,$colName,1);
}
$pdf->Ln();
foreach($db->query("SELECT * FROM mytest") as $row) {
$pdf->Ln();
foreach($colNames as $colName) {
$pdf->Cell(90,12,$row[$colName],1);
}
}
ob_end_clean();
$pdf->Output();
?>
关于php - MYSQL转PDF为空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34694186/