Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [fpdf] FPDF error: Some data has already been outp
Forum PHP.pl > Forum > PHP
Machine
Witam!
zacząłem tworzyć pdf-y za pomocą biblioteki fpdf.
jak zrobię coś takiego:

  1. <?php
  2. define('FPDF_FONTPATH','');
  3.  
  4. $pdf=new FPDF();
  5. $pdf->Open();
  6. $pdf->SetFont('Arial','',15);
  7. //Page 1
  8. $pdf->AddPage();
  9. $pdf->Cell(0,6,'Paragraph 1');
  10. $pdf->Ln(50);
  11. $pdf->Cell(0,6,'Paragraph 2');
  12. //Page 2
  13. $pdf->AddPage();
  14. $pdf->Cell(0,6,'Paragraph 3');
  15. $pdf->Output();
  16. ?>


to wszystko działa, natomiast jak dodaję obsługę bazy danych (w moim przypadku Firebird 1.5), czyli np. coś takiego

  1. <?php
  2. define('FPDF_FONTPATH','');
  3. require('fpdf.php');
  4. include('../fb_connect.php');
  5.  
  6. $zapytanie = &#092;"SELECT * FROM FIRMA, MIASTA where FIRMA.MIASTO=MIASTA.MIASTO_ID\";
  7. $wynik = ibase_query($connection, $zapytanie);
  8. $wiersz= ibase_fetch_object($wynik);
  9.  
  10. $nazwa=$wiersz->NAZWA;
  11. $adres=$wiersz->ADRES;
  12. $miasto=$wiersz->MIASTO;
  13. $nip=$wiersz->NIP;
  14. $telefon=$wiersz->TELEFON;
  15. $telefax=$wiersz->TELEFAX;
  16. $email=$wiersz->EMAIL;
  17.  
  18. ibase_close ($connection);
  19.  
  20.  
  21. $pdf=new FPDF();
  22. $pdf->Open();
  23. $pdf->SetFont('Arial','',15);
  24. //Page 1
  25. $pdf->AddPage();
  26. $pdf->Cell(0,6,$nazwa);
  27. $pdf->Ln(20);
  28. $pdf->Cell(0,6,$adres);
  29. $pdf->Ln(20);
  30. $pdf->Cell(0,6,$miasto);
  31. $pdf->Ln(20);
  32. $pdf->Cell(0,6,$nip);
  33. $pdf->Ln(20);
  34. $pdf->Cell(0,6,$telefon);
  35. $pdf->Ln(20);
  36. $pdf->Cell(0,6,$telefax);
  37. $pdf->Ln(20);
  38. $pdf->Cell(0,6,$email);
  39. $pdf->Output();
  40. ?>


dostaję błąd

  1. Warning: Cannot modify header information - headers already sent by (output started at c:\usr\apache\httpd\html\hurtownia\fb_connect.php:16) in c:\usr\apache\httpd\html\hurtownia\pdf\fpdf.php on line 1022
  2. FPDF error: Some data has already been output to browser, can't send PDF file


Może mi ktoś powiedzieć co robię źle? na stronie fpdf.org jest chyba podobny problem w FAQ omówiony, ale dużo mi to nie daje sad.gif
crash
Zobacz czy nie zostało nic zwrócone (tekst/błędy) w: c:\usr\apache\httpd\html\hurtownia\pdf\fpdf.php w linii: 1022
yew
Zobacz, czy przed <? nic nie ma (nawet biały znak się liczy).
Machine
Cytat
czy przed <? nic nie ma


nic nie ma

Cytat
(tekst/błędy) w: c:\usr\apache\httpd\html\hurtownia\pdf\fpdf.php w linii: 1022


w tym miejscu biblioteki jest sprawdzane

  1. <?php
  2. if(headers_sent()) $this->Error(...ten mój błąd
  3. ?>


na fpdf.org jest podobny problem w ten sposób opisany

  1. 9. I encounter the following error when I try to generate a PDF: Warning: Cannot add header information - headers already sent by (output started at script.php:X)
  2.  
  3. You must send nothing to the browser except the PDF itself: no HTML, no space, no carriage return, neither before nor after. The script outputs something at line X.


jakoś mi tu nic nie mówi, ktoś może rozumie o co dokłądnie tu chodzi? tzn że nie mogę się z bazą łączyć tworząc pdf'a? patrzałem na przykłady i tam jednak mogli :?:
Liko
Chodzi o to ze wysylasz gdzieś tekst i stad ten błąd. Sprawdź czy nigdzie nie masz echo/print lub czy baza nie zwraca błędu.
Machine
ok, już wiem o co chodzi, mieliście rację:

Cytat
Zobacz, czy przed <? nic nie ma (nawet biały znak się liczy).


przed <? nic nie było, ale za ?> miałem trochę "białych znaków" czyli spacje w pliku z kodem łączącym z bazą.

Dziękuję za podpowiedzi, pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.