PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   FPDF Steh voll auf dem Schlauch (https://www.php-resource.de/forum/php-developer-forum/105618-fpdf-steh-voll-auf-dem-schlauch.html)

thommy1972de 26-05-2016 17:22

FPDF Steh voll auf dem Schlauch
 
Hab mal wieder seit 7 Stunden ein tolles Probem.
Ich erzeuge PDF Dateien mit FPDF.
Ich habe mehrere PDF Dateien die diese erzeugen. Rechnungen, Angebote und auch Aufträge.
Rechnungen und Angebote gehen wunderbar nur Aufträge will er mir nicht aufmachen. Habe den Code schon von Rechnungen kopiert, alles rausgenommen und nur eine PDF Datei erzeugen wollen - nix. Ich werd bald Wahnsinnig mit dem Mist... Nun zum eigentlichen Teil...
Folgender Code ist in der PHP Datei die aufgerufen wird:
PHP-Code:

<?
ini_set
('display_errors''on');
error_reporting(E_ALL E_STRICT);
require(
'fpdf/fpdf.php');
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();
ob_end_flush(); 
?>

Diese Seite wir mit einer normalen <a href= .. Anweisung in einem neuen Fenster geöffnet und soll einfach eine PDF Datei erzeugen....
Macht es aber nicht..
Die fpdf.php ist vorhanden ( sonst würde da ein Fehler stehen )
Ich bekomme aber seit Stunden nur:
PHP-Code:

Fatal errorUncaught exception 'Exception' with message 'FPDF error: Some data has already been output, can't send PDF file' in /var/www/k103238web/htdocs/www.zwpc.de/admin/fpdf/fpdf.php:271 Stack trace: #0 /var/www/k103238web/htdocs/www.zwpc.de/admin/fpdf/fpdf.php(1063): FPDF->Error('Some data has a...') #1 /var/www/k103238web/htdocs/www.zwpc.de/admin/fpdf/fpdf.php(999): FPDF->_checkoutput() #2 /var/www/k103238web/htdocs/www.zwpc.de/admin/seiten/auf_pdf.php(9): FPDF->Output() #3 /var/www/k103238web/htdocs/www.zwpc.de/admin/index.php(90): include('/var/www/k10323...) #4 {main} thrown in /var/www/k103238web/htdocs/www.zwpc.de/admin/fpdf/fpdf.php on line 271 


Bitte, bitte - kann mir jemand auf die Sprünge helfen ??
P.S. Ja ich habe nach dem Fehler gegoogled !

mermshaus 26-05-2016 17:36

Guck mal, ob deine Quellcodedatei eine Byte-Order-Mark enthält. (Im Zweifel mit einem Hexeditor.)

- https://de.wikipedia.org/wiki/Byte_Order_Mark

Falls ja, muss die raus. (In der Regel eine Editor-Einstellung.)

thommy1972de 26-05-2016 17:43

re
 
Negativ
Notepad++ ->Kodierung->UTF8 ohne BOM
Habe auch schon gelöscht und neu angelegt...
Komisch das alle anderen gehen nur diese eine nicht...

mermshaus 26-05-2016 17:48

Dann guck mal, ob in der Ausgabe vor der Fehlermeldung was steht.

Vielleicht reicht es dazu schon, die $pdf->Output();-Zeile auszukommentieren.

Ansonsten würde ich die Rückgabe als Datei speichern und im Zweifel mit einem Hexeditor betrachten, falls nichts Offensichtliches zu sehen ist.

thommy1972de 26-05-2016 17:54

re
 
PHP-Code:

<b>Fatal error</b>:  Uncaught exception 'Exception' with message 'FPDF error: Some data has already been output, can't send PDF file' in /var/www/k103238web/htdocs/xxxxx/fpdf/fpdf.php:271
Stack trace:
#0 /var/www/k103238web/xxxxx/fpdf/fpdf.php(1063): FPDF-&gt;Error('
Some data has a...')
#1 /var/www/k103238web/xxxxx/fpdf/fpdf.php(999): FPDF-&gt;_checkoutput()
#2 /var/www/k103238web/xxxxx/seiten/auf_pdf.php(7): FPDF-&gt;Output()
#3 /var/www/k103238web/xxxxx/index.php(90): include('
/var/www/k10323...)
#4 {main}
  
thrown in <b>/var/www/k103238web/xxxxx/fpdf/fpdf.php</bon line <b>271</b><br /> 

Wie soll er denn ohne Output() die PDF ausgeben ?

h3ll 26-05-2016 18:19

Zitat:

Zitat von thommy1972de (Beitrag 672803)
Wie soll er denn ohne Output() die PDF ausgeben ?

Gar nicht. Aber wie willst du sonst rausfinden, ob nicht was anderes ausgegeben wird?

thommy1972de 26-05-2016 18:21

re
 
Das ist ja das hüpfende Komma. Ohne Output() wird garnichts ausgegeben. Mit wenigstens noch eine Fehlermeldung ^^
Ich werde das ganze wohl in einem Popup mit PHP aufmachen und mit einem PDF Drucker ausdrucken. Langsam nervt mich der Mist...
Trotzdem Danke.

h3ll 26-05-2016 18:34

Zitat:

Zitat von thommy1972de (Beitrag 672805)
Das ist ja das hüpfende Komma. Ohne Output() wird garnichts ausgegeben.

Sicher? Wie hast du das festgestellt? Ist die Ausgabe 0 Byte groß?

thommy1972de 26-05-2016 18:50

re
 
Langsam glaube ich es liegt eher an fpdf.php als an mir..
Wenn ich die Datei xxx.php direkt aufrufe erhalte ich den Fehler 500.
Mache ich eine echo davor:
PHP-Code:

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

gibt er mir "fest" aus...

h3ll 26-05-2016 18:54

Bitte beantworte meine Frage.

Und das schließende PHP-Tag am Ende (?>) solltest du übrigens immer weg lassen.

thommy1972de 26-05-2016 19:28

re
 
Nein die Datei ist natürlich nicht 0 Byte gross...

h3ll 26-05-2016 19:34

Zitat:

Zitat von thommy1972de (Beitrag 672809)
Nein die Datei ist natürlich nicht 0 Byte gross...

Was heißt "die Datei"? Ich rede von der Ausgabe, die der Browser erhält. Diese muss 0 Byte groß sein, ansonsten gibst du irgendwo etwas aus, das da nicht hingehört.

thommy1972de 26-05-2016 19:46

Es steht nichts da. Auch im Quelltext nichts (ausser die 1 oben links)

h3ll 26-05-2016 19:49

Nur weil du nichts siehst, heißt das nicht, das nichts da ist.

Die Ausgabe sollte 0 Byte groß sein.

Wenn ich testweise einen UTF-8 BOM ausgebe, erhalte ich folgendes:
http://666kb.com/i/d99trormo60z1zdcw.png
Hier der Testcode dazu:

PHP-Code:

<?php

echo "\xEF\xBB\xBF";


thommy1972de 26-05-2016 20:01

http://www.zwpc.de/002_01.jpg

Ohne alles ist sie 0 und 0 Byte
Die beiden anderen Dateien binde ich exakt genauso ein und die ja gehen... Nur die eine nicht...


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:55 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG