php FPDF错误:一些数据已经输出

egmofgnx  于 2023-01-24  发布在  PHP
关注(0)|答案(1)|浏览(148)

每当我尝试使用FPDF创建PDF时,我都会收到以下错误:
FPDF错误:一些数据已经输出,无法发送PDF文件(输出开始于路径:15)。
当我的文件中除了PDF脚本什么都没有时,它就能工作,但我需要从我的数据库中收集一些数据。
我已经将ob_clean();添加到函数Output();中,但不幸的是,它仍然不起作用。
下面是我的代码:

<?php
include "connect.php";

$orderId = $_GET['OrderId'];
$findOrders = mysql_query("SELECT * FROM orderLines WHERE OrderId = $orderId ");
if (!$findOrders) { 
    die('Invalid query: ' . mysql_error());
}

while($row=mysql_fetch_array($findOrders)){
    $article = $row['article'];
    $quantity = $row['quantity'];
    $price = $row['price'];
}

require('fpdf17/fpdf.php');

$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();
?>
fhity93d

fhity93d1#

当显示此错误时,它表示PHP文件旁边的一些数据正在发送到您的浏览器,即FPDF将文件头发送到PDF文件,
header('Content-Type: application/pdf');
但是您输入了一些数据,比如在头规范之前输入一个字符甚至一个空格,这就导致了错误。
两个选项:
1)在脚本的开头做require('fpdf17/fpdf.php');,这样头就不能改了,头设置好之前就没有入口了;
2)如果你说这个脚本不需要数据库搜索就可以运行,那么错误可能出在connect.php文件上。仔细检查一下,确保它没有向浏览器发送任何东西(<?php ?>内部和外部也一样!
P.S.:FPDF在调用时已经执行ob_clean()

相关问题