我正在使用FPDF创建pdf,其中包含从mySql表中读取数据的表。FPDF使用MultiCell相邻设置表数据 - SetY问题
我正在动态创建表标题。现在的问题是,当我在while循环中使用SetXY时,它会停止执行。所以如果我使用SETX只有它让我下载PDF文档,它看起来像下面的图片
这里是我的代码
$pdf = new FPDF('P','mm',array(500,600));
$pdf->SetAutoPageBreak(true, 0);
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Arial','B',12);
$w = 100;
$x = $pdf->GetX();
$y = $pdf->GetY();
$pdf->MultiCell($w,12,"Rec No",1,-1);
$pdf->SetXY(($x+$w),$y);
$x = ($x+$w);
foreach($columns as $heading) {
$pdf->MultiCell($w,12,$heading,1,-1);
$pdf->SetXY(($x+$w),$y);
$x = ($x+$w);
}
$pdf->ln();
$i=1;
$result2 = mysqli_query($conn, $sql);
$x = $w;
while($rows = mysqli_fetch_array($result2)) {
$pdf->SetFont('Arial','',12);
$pdf->MultiCell($w,12,$i,1,1);
$pdf->SetX(($x+10));
$x = ($x+$w);
foreach($columns as $column)
{
$pdf->MultiCell($w,12,$rows[$column],1,1);
$pdf->SetX($x+10);
$x = ($x+$w);
}
$x = $w;
$pdf->ln();
if(($i%41) == 0)
{
$pdf->SetFont('Arial','B',12);
$pdf->MultiCell(20,12,"Rec No",1);
$pdf->SetX($x+10);
foreach($columns as $heading) {
$pdf->MultiCell(100,12,$heading,1);
}
$pdf->ln();
}
$i++;
$pdf->Ln($y);
}
$pdf->Output('Civil Data.pdf','D');
我已经研究了多单元的例子近3小时,发现了一些解决方案也。
在所有解决方案中,它们设置X和Y位置以并排排列。
我试着用SetXY设置位置,并且我成功地设置了表格标题并排。但在数据的情况下,它不工作时,我使用SetXY。当我只使用SetX而不是SetY时,它可以让我下载pdf。
它停止执行在While循环
我试图把SetXY($ X + $ W,$ Y)在while循环设置Y位置,但是它停止执行和犯规让我下载PDF格式。
任何帮助将不胜感激。
由于提前,
的Leena