FPDF error: Some data has already been output, can't send PDF file on 000webhost

fpdf, php

Solution

I think that `session.auto_start` is set to 1. This will start a session and send a `PHPSESSID` cookie to the browser.

You can try to disable it using the following code:

<?php
ini_set("session.auto_start", 0);
require('fpdf.php');
$pdf = new FPDF();
$pdf->AddPage()
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();
?>

In case setting `session.auto_start` to 0 does not work, then try this:

<?php
ob_start();
require('fpdf.php');
$pdf = new FPDF();
$pdf->AddPage()
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();
ob_end_flush(); 
?>

Problem

I am using FPDF class to generate a pdf on my website. Everything worked well until last few weeks when I started getting error: ``` FPDF error: Some data has already been output, can't send PDF file ``` During last few weeks haven't change anything in my code and I have also checked for any output execpt the fpdf (including unecessary space before php, disabled BOM signature etc.) I have my website on 000webhost.com so I have also disabled the analytic code at the end of the page, but the pdf still doesn't work. The only trace I have left is misterious "" in a source code (I can see it when checking source code in Chrome browser). I cant get to work even this simple example: ``` <?php require('fpdf.php'); $pdf = new FPDF(); $pdf->AddPage() $pdf->SetFont('Arial','B',16); $pdf->Cell(40,10,'Hello World!'); $pdf->Output(); ?> ``` Is there a way to disable any other output on web page by php? or does someone use fpdf on 000webhost?

Original source