致命错误:某些数据已经输出,无法发送PDF文件

时间:2017-05-01 13:29:15

标签: php mysql pdf

所以这是我的代码



 <body>
  <section id="container" >
     <?php require 'inc/header.php';?>

    <section id="main-content">
      <section class="wrapper">
            <div class="row">
              <div class="row mt">
                <div class="col-md-12">
                  <div class="content-panel">
        <!-- 1ere ETAPE -->                 
                  <h1 style="text-align:center ;"> Rénitialisation  </h1>
                    <div class="etape1">
<?php 
require('inc/reni/fpdf.php'); 
$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',10);
$pdf->Ln();
$pdf->Ln();
$pdf->SetFont('times','B',10);
$pdf->Cell(25,7,"nom");
$pdf->Cell(30,7,"prenom");
$pdf->Ln();
$pdf->Cell(450,7,"----------------------------------------------------------------------------------------------------------------------------------------------------------------------");
$pdf->Ln();

        include ('inc/reni/db.php');
       $sql="SELECT * FROM table1";
        $result = $bdd->query($sql);

        while($rows=$result->fetch())
        {
            $nom = $rows[0];
            $prenom = $rows[1];
            $pdf->Cell(25,7,$nom);
            $pdf->Cell(30,7,$prenom);

        
            $pdf->Ln(); 
        }

$pdf->Output();?>
                    </div>

              
                  </div>
                </div>
              </div><!-- /col-md-12 -->
            </div><!-- /row -->
      </section><! --/wrapper -->
    </section><!-- /MAIN CONTENT -->
  </section>
<?php require 'inc/script.php';?>

  </body>
&#13;
&#13;
&#13;

错误是:致命错误:未捕获异常:FPDF错误:某些数据已经输出,无法发送PDF文件。 我尝试添加ob_end_clean(); ob_start(); ob_end_flush(); 当我这样做时,我的页面是空的,Pdf不显示

2 个答案:

答案 0 :(得分:0)

您尝试使用结果它是一个八位字节流,它将PDF文件发送到您的浏览器以下载文件。在这种情况下,您之前无法输出。创建单个文件并输出该PDF文件,而无需先编写任何内容。然后你可以下载该文件。

这是错误消息告诉您的内容。在输出PDF文件之前不要输出任何内容。

答案 1 :(得分:0)

你已经输出了一些东西。

通常在某处有一个回声,或者你有这样的PHP代码:

<HTML>
<?php // do my pdf thing ?>

如果你的pdf输出前面有任何内容,那么它是一个空格,一些html,一个回音,一个打印,你会得到这个错误。

即使是包含pdf的php结束标记之后的空格也可能导致此问题。

<?php 
    class PDFWriter() {
    // some code
    }
?> <-- space here

<?php include('pdfwriter.php');

这就是为什么你应该省略纯php文件上的结束标记,这样就不会发生。

在您的情况下,您要添加所有这些div

<body>
  <section id="container" >
     <?php require 'inc/header.php';?>

    <section id="main-content">
      <section class="wrapper">
            <div class="row">
              <div class="row mt">
                <div class="col-md-12">
                  <div class="content-panel">
        <!-- 1ere ETAPE -->                 
                  <h1 style="text-align:center ;"> Rénitialisation  </h1>
                    <div class="etape1">

这违反了无输出发送要求。