如何在FPDF中删除此错误?

时间:2015-03-31 12:01:42

标签: php fpdf

我正在使用FPDF以pdf格式显示以html格式提交的数据。 我已经完成了之前问题的所有解决方案,但我无法解决这个问题。 我收到了错误:

  

注意:未定义的变量:s_   第9行的C:\ xampp \ htdocs \ dynamic website \ form1.php中的名称   FPDF错误:某些数据已经输出,无法发送PDF文件

我的部分HTML代码是

<td align="right" valign="top">
  <label for="student3_name">3.Name </label>
  </td>
<td valign="top">
  <input  type="text" name="student3_name" maxlength="50" size="20" >
  </td>

我的form1.php如下:

<?php
   if(isset($_POST['submit']))
   {$s_name = $_POST["student3_name"];}
   require ("fpdf/fpdf.php");
   $pdf=new FPDF('P','mm','A4');
   $pdf->AddPage();
   $pdf->SetFont('Arial','B',16);
   $pdf->Cell(0,50,'',0,1);
   $pdf->Cell(60,10,"hello{$s_name}",10,8,'C');
   $pdf->output();
?>

编辑: 这是我的表格的详细部分

<form name="submission_form" method="post" action="form1.php">
  <p style="text-align: center; font-size: 24px; font-weight: 900;></p>
  <table width="634" align="center" border="1">
  <tr>
  <td align="right" valign="top">
  <label for="student3_name">3.Name </label>
  </td>
  <td valign="top">
  <input  type="text" name="student3_name" maxlength="50" size="20" >
  </td>
  </tr> 
  <tr>
  <td colspan="4" style="text-align:center">
  <input type="submit" value="Submit"></td>
  </tr>

2 个答案:

答案 0 :(得分:1)

将您的代码更改为:

<?php
       $s_name = "";
       if(isset($_POST['submission_form']))
       {
               $s_name = $_POST["student3_name"];
       }
       require ("fpdf/fpdf.php");
       $pdf=new FPDF('P','mm','A4');
       $pdf->AddPage();
       $pdf->SetFont('Arial','B',16);
       $pdf->Cell(0,50,'',0,1);
       $pdf->Cell(60,10,"hello{$s_name}",10,8,'C');
       $pdf->output();
    ?>

将提交按钮更改为此

<input name="submission_form" type="submit" value="Submit">

你在一个块中声明$ s_name变量,该变量在块外是不可见的,所以除了在声明它的块内部之外,你不能在其他地方使用它。

答案 1 :(得分:0)

s_name返回false的情况下,您需要一个定义isset($_POST['submit'])的else条件。

类似的东西:

if (isset($_POST['submit'])) {
    $s_name = $_POST['student3_name'];
} else {
    $s_name = 'The form hasn\'t been submitted yet!';
}

跟上您的修改:

还要确保提交按钮发布其值。为此,您需要包含名称属性:

<input name="submit" type="submit" value="Submit"/>