venturemc Posted November 10, 2009 Share Posted November 10, 2009 I've been playing with the FPDF module. I was building a form and rolling right along and then suddenly I started getting the "FPDF error: Some data has already been output, can't send PDF file" error when trying to view the page I'm building. It had been working fine until I converted my structure data into an array for cleaner coding. I'd alresdy been using an array to draw my lines, so I knw that the use of an array isn't the issue in itself. I know that this error has to do with headers, but I can't figure out where the issue is developing. How can I go about finding out where the issue is? When I first tested a sample FPFD script I got this error and discovered that I had inadvertently put a couple spaces in front of the <?PHP bracket. It worked fine after removing the spaces. I experienced some issues with my editor between the time itwas working and when it wasn't. I'm wondering if it's possible that something got corrupted. The document outputs to file without issue - just having trouble displaying the document on the browser. For what it's worth, here's my code: <?php require_once $_SERVER['DOCUMENT_ROOT'] . '/lib/fpdf/fpdf.php'; include_once $_SERVER['DOCUMENT_ROOT'] . '/lib/pe_lib/pe.inc.php'; $pdf=new FPDF(); // front page $pdf->AddPage(); //draw lines $fp_lines = array(); $fp_lines = get_fplines(); for ($ctr=0;$ctr<=count($fp_lines);$ctr++ ){ $pdf->Line($fp_lines[$ctr]['x1'], $fp_lines[$ctr]['y1'], $fp_lines[$ctr]['x2'],$fp_lines[$ctr]['y2']); } //add boiler plate $fp_bp=array(); $fp_bp = get_fpbp(); for ($ctr=0;$ctr<=count($fp_bp);$ctr++){ $pdf->SetFont($fp_bp[$ctr]['font'],$fp_bp[$ctr]['font_type'], $fp_bp[$ctr]['font_size']); $pdf->SetXY($fp_bp[$ctr]['x'], $fp_bp[$ctr]['y']); $pdf->Write(5,$fp_bp[$ctr]['text']); } $pdf->Output($_SERVER['DOCUMENT_ROOT']. '/pdf_docs/test2.pdf',"F"); $pdf->Output(); ?> Quote Link to comment https://forums.phpfreaks.com/topic/180938-fpdf-help/ Share on other sites More sharing options...
darkvengance Posted November 10, 2009 Share Posted November 10, 2009 What about that blank line right before the opening tag? If that is there in your originall script make sure you remove it. Quote Link to comment https://forums.phpfreaks.com/topic/180938-fpdf-help/#findComment-954683 Share on other sites More sharing options...
venturemc Posted November 10, 2009 Author Share Posted November 10, 2009 No, that line is not in my code. The PHP tag is on line 1 in my script with no spaces. Quote Link to comment https://forums.phpfreaks.com/topic/180938-fpdf-help/#findComment-954852 Share on other sites More sharing options...
waterssaz Posted November 10, 2009 Share Posted November 10, 2009 AHhhh the dreaded common fpdf error .Also make sure you have no whitespace after the code as well :-) Sorry I meant to say whitespace at the end of the include files :-) Quote Link to comment https://forums.phpfreaks.com/topic/180938-fpdf-help/#findComment-954915 Share on other sites More sharing options...
Mchl Posted November 10, 2009 Share Posted November 10, 2009 And if your files are saved as UTF8 then check for BOM at the beginning (and remove it if it's there) Quote Link to comment https://forums.phpfreaks.com/topic/180938-fpdf-help/#findComment-954947 Share on other sites More sharing options...
venturemc Posted November 10, 2009 Author Share Posted November 10, 2009 Thanks waterssaz, that appears to have been the issue. Kiind of rough trying debug "emptiness", but it helps to know what to look for. I've had one other minor issue regarding viewing PDF files on the browser. As I'm plotting and checking, I go back and forth between my code and the browser. When I execute the page after it's been open and I've made an adjustment, I get a 404. Try again and the page appears. I'm guessing it has something to do with needing to close or delete something after the page has been created. Should there be another command after my Output statements to clean up the object? Quote Link to comment https://forums.phpfreaks.com/topic/180938-fpdf-help/#findComment-955013 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.