将表格值分隔到不同的单元格中

所以我已经开始掌握使用 fpdf 但我不确定的一件事是将数组值分离到 pdf 形式的不同单元格上。


这是我遇到问题的表格部分。表单本身没问题,可以通过我的 php 文件。


<table class="qualifications" id="qualifications" >

  <tr>

  <td><b>Date From</b></td>

  <td><b>Date To</b></td>

  <td><b>Name of School/College/Institute or Professional Body</b></td>

  <td><b>Examinations Taken and Results</b></td>

  </tr>

  <tr>

  <td><input type="text" name="date_from[]" id="date_from" /></td>

  <td><input type="text" name="date_to[]" id="date_to"/></td>

  <td><input type="text" name="school_name[]" id="school_name" /></td>

  <td><input type="text" name="results[]" id="results"/></td>

  </tr>

</table>

<a href="#" title="" class="add-row">Add Row</a>

用户可以使用添加行链接添加任意数量的行


这就是我从表中获取值的方式:


if( isset($_POST['date_from']) && is_array($_POST['date_from']) ) {

    $from = implode(', ', $_POST['date_from']);


}


if( isset($_POST['date_to']) && is_array($_POST['date_to']) ) {

    $to = implode(', ', $_POST['date_to']);


}


if( isset($_POST['school_name']) && is_array($_POST['school_name']) ) {

    $schoolName = implode(', ', $_POST['school_name']);


}


if( isset($_POST['results']) && is_array($_POST['results']) ) {

    $examResults = implode(', ', $_POST['results']);


}

在以 pdf 形式填充单元格时,我一直在做类似的事情:


 $pdf->Cell($width_cell[0],10,$from,1,0,'C'); 

但这只是将输入到表格中的每个值保留在一个单元格中


例如,如果有人在资格表中输入了 2 行,并且值中的日期是:


22/09/2002 和 10/10/18


这些只会显示在与 22/09/12、10/10/18 相同的单元格上


那么我将如何更改它,以便第二个值等将位于第一个单元格下方?


希望这是有道理的


编辑:这就是我现在填充单元格的方式:


  $width_cell=array(30,25,50,90);


$pdf->Cell($width_cell[0],10,'Date From',1,0); // First header column 

$pdf->Cell($width_cell[1],10,'Date To',1,0); // Second header column

$pdf->Cell($width_cell[2],10,'Name of School',1,0); // Third header column 

$pdf->Cell($width_cell[3],10,'Examinations Taken & Results',1,1); // Fourth header column


  $pdf->SetFont('Arial','',10);

 foreach ($from as $point => $data) {

 $pdf->Cell($width_cell[0],10,$data,1,1,'C');


}


慕雪6442864
浏览 106回答 1
1回答

largeQ

假设您的表单检查确保在每一行中完成所有 4 个字段,您可以简单地使用foreach它来浏览所有内容并将其添加到 PDF 中。首先,不要内爆你的_POST数组。保持它们完好无损,您将能够使用foreach它们来浏览它们。$from&nbsp; &nbsp; &nbsp; &nbsp; = (isset($_POST['date_from'])&nbsp; &nbsp;? $_POST['date_from']&nbsp; &nbsp;: array());$to&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; = (isset($_POST['date_to'])&nbsp; &nbsp; &nbsp;? $_POST['date_to']&nbsp; &nbsp; &nbsp;: array());$schoolName&nbsp; = (isset($_POST['school_name']) ? $_POST['school_name'] : array());$examResults = (isset($_POST['results'])&nbsp; &nbsp; &nbsp;? $_POST['results']&nbsp; &nbsp; &nbsp;: array());foreach ($from as $point => $data) {&nbsp; &nbsp; $pdf->Cell($width_cell[0],10,$data,1,1,'C');&nbsp; &nbsp; // if you want to put the "to" in another cell it would be referenced&nbsp; &nbsp; // as $to[$point] or $schoolName[$point] etc}如果您想将 from、to 和 schoolName 数据放在一行上,您可以使用以下内容:$pdf->Cell($width_cell[0],10,'From: '&nbsp; &nbsp; &nbsp; &nbsp; . $data&nbsp; &nbsp; &nbsp; &nbsp;.&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;' To: '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;. $to[$point] .&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;' School Name ' . $schoolName[$point],1,1,'C');
打开App,查看更多内容
随时随地看视频慕课网APP