Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo,

Ich erstelle bei mir ein PDF, anschließend wird es mit einem redirect aufgerufen.

Da alle Kunden die auf dieser Seite sind ein solches PDF generieren können, wäre es gut wenn sich nach dem öffnen der Datei dieses PDF wider löscht, da ich dem Server sonst nur Speicher nehme.

Hier einmal ein kleiner Ausschnitt den Quelltextes:

$pdf=new HTML2FPDF();

$pdf->AddPage();

$pdf->Image(SHOP_URL."images/logo.jpg",5,5,$w=200,$h=30);

$pdf->Ln($h=10);

$pdf->WriteHTML($text1);

$pdf->Output($name = "test.pdf");

redirect($name);

Geschrieben

Ich würd es mal so versuchen:



$pdf=new HTML2FPDF();
$pdf->AddPage();
$pdf->Image(SHOP_URL."images/logo.jpg",5,5,$w=200,$h=30);
$pdf->Ln($h=10);
$pdf->WriteHTML($text1);
header("Content-Type : application/pdf");
$pdf->Output();
[/php]

Unter Umständen noch ein

header("Content-Disposition: attachment; filename=".$filename.".pdf");

dazu, aber der Name wird ja von fpdf schon auf doc.pdf gesetzt, wenn für die Methode Output kein Parameter angegeben wird.

Da ich das noch nie benutzt habe könnte u.U. auch der content-Type header zuviel sein.

EDIT:

Der einfachste Weg eine Datei zu löschen ist sie gar nicht erst anzulegen :D

EDIT2:

steht doch alles da:

I: Sendet das Dokument als Datei an den Client (Browser). Sofern auf dem Client vorhanden, wird das PDF Dokument durch das Adobe Acrobat Reader Plugin des Browsers angezeigt. Der Name wird als Dateiname für den "Speichern unter" Dialog des Browser verwendet, sofern das Plugin nicht vorhanden ist bzw. explizit das Speichern der Datei angefordert wurde.

[/Quote]

also:

[php]
$pdf->Output($name, "I");

Geschrieben

Jo ich weiss aber irgendwie klappt das net bei mir der gibt mir dann ganz viele fehlermeldungen:

Notice: Undefined index: WIDTH in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 720

Notice: Undefined index: ALIGN in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 721

Notice: Undefined index: COLOR in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 722

Notice: Undefined index: WIDTH in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 720

Notice: Undefined index: ALIGN in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 721

Notice: Undefined index: COLOR in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 722

Notice: Undefined index: nc in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 1340

Notice: Undefined index: nr in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 1341

Notice: Undefined index: nc in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 2508

Notice: Undefined index: nr in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 2509

Notice: Undefined index: nc in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 2612

Notice: Undefined index: nc in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 2672

Notice: Undefined index: nr in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 2673

Notice: Undefined index: nc in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 2816

Notice: Undefined index: nr in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 2817

Notice: Undefined index: WIDTH in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 720

Notice: Undefined index: ALIGN in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 721

Notice: Undefined index: COLOR in C:\Programme\Apache2\htdocs\m-eshop\third-party\fpdf\html2fpdf.php on line 722

Geschrieben
Jo ich weiss aber irgendwie klappt das net bei mir der gibt mir dann ganz viele fehlermeldungen:

Notice: ...

Wie es da steht, das ist keine Fehlermeldung sondern ein Hinweis. Da PHP keine strenge Typisierung hat und Variablen einfach so irgendwo benutzt (und damit dann deklariert) werden können kann es auch zu solchen Situationen kommen. Dass du auf eine Variable zugreifst, die gar nicht existiert. Das muss nicht immer zu einem Fehler kommen.

error_reporting(0); schaltet alle Meldungen ab (für Produktivumgebungen empfohlen).

error_reporting(E_ALL ^ E_NOTICE); schaltet z.B. die Hinweise ab.

siehe:

PHP: error_reporting - Manual

Dass das bei dir ein Fehler ist, liegt daran, dass dein Dokument nur das PDF ausgeben soll. Da aber die Hinweismeldungen ausgegeben werden, ist das PDF fehlerhaft und Header können nicht mehr nach einer erfolgten Ausgabe gesendet werden.

Geschrieben

jojo hab ich mir auch schon gedacht, aber dann bekomme ich eine leere Seite und eine Fehlermeldung vom Acrobat reader:

Beim öffnen dieses Dokuments ist ein Fehler aufgetreten.

Diese Datei ist Beschädigt und kann nicht repariert werden.

Hoffe du hast auch darauf eine Lösung :P

ajo un danke schonmal für deine Hilfe :D

Geschrieben

Hoffe du hast auch darauf eine Lösung :P

Dann öffne das Dokument nicht gleich mit dem Reader sondern speicher es mal ab und schau es dir mit nem Texteditor an.

Dann wirst du ja sehen, was da rauskommt. Ich schätze mal, dass da eben doch noch was davor kommt o.ä., was da nicht hinsoll.

Kannst es mit einer Option ja als Anhang ausgeben (s.o., keine Ahnung mehr auswendig) und dann sollte nämlich der Speichern-Dialog aufgehen.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...