mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 26.04.2024 13:22 Benutzername: Passwort: Auto-Login

Thema: PDF erstellen und anschließend in Zip einbinden vom 21.02.2011


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> PDF erstellen und anschließend in Zip einbinden
Seite: 1, 2  Weiter
Autor Nachricht
oso_de_la_nariz
Threadersteller

Dabei seit: 21.02.2011
Ort: Dresden
Alter: -
Geschlecht: Männlich
Verfasst Mo 21.02.2011 01:41
Titel

PDF erstellen und anschließend in Zip einbinden

Antworten mit Zitat Zum Seitenanfang

Moin Gemeinde,

nachdem ich schon oft Lösungen/Ideen bei Euch hier gefunden habe, habe ich mich mal registriert und will auch gleich mal ne Frage stellen Lächel

Habe ein php-Script erstellt welches eine PDF Datei erstellt und auf dem Server speichert.. funktioniert.(pdf_expose.php)
Desweiteren habe ich ein (Export-)Script welches mir Bilder zusammensammelt und ein SQL-Statement zusammenbaut und als ZIP zum Download bereit stellt ... funktioniert (export_zip.php).

Nun möchte ich das erstellte PDF in diese ZIP einbinden.

Das PDF wird mittels FPDF erstellt und auf dem Server gespeichert (pdf_expose.php).
Code:
$pdf->Output($export_pdf, F );
.. funktioniert

In der die ZIP erstellenden Datei wird die Datei die das PDF erstellt mittels require eingebunden nachdem zuvor schon die Bilder der ZIP hinzugefügt wurden.
Code:
require_once("pdf_expose.php");
$zip->addFile(file_get_contents($export_pdf), $filename_sql, filectime($filepath_sql)); //PDF Expose hinzufügen


Das PDF wird erstellt aber beim Einbinden in das ZIP erscheint folgendes:
Zitat:
Warning: Cannot modify header information - headers already sent by (output started at C:\Xampp\htdocs\xxxx\administration\pdf_expose.php:562) in C:\Xampp\htdocs\xxxx\administration\export_zip.php on line 106


Oben genannte Fehlermeldung verstehe ich wohl, nur wie umgehe ich das Senden des Headers? Ich will doch nur die PDF einbinden.. nicht ausgeben?
Offensichtlich wird beim Speichern der PDF-Datei ein Header gesendet was das anschließende Zippen behindert.

Habt Ihr ne Idee dazu?

Danke
ivo


Zuletzt bearbeitet von oso_de_la_nariz am Mo 21.02.2011 01:43, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Mo 21.02.2011 16:21
Titel

Antworten mit Zitat Zum Seitenanfang

was steht denn in pdf_expose.php:562 und in export_zip.php 106
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
oso_de_la_nariz
Threadersteller

Dabei seit: 21.02.2011
Ort: Dresden
Alter: -
Geschlecht: Männlich
Verfasst Di 22.02.2011 00:30
Titel

Antworten mit Zitat Zum Seitenanfang

Hi pixelpapst,

Danke für Deinen Einwurf.
In der pdf_expose.php:562 steht nix, denn die letzte Zeile ist die 561 Lächel
In der export_zip.php:106 sollte diese erstellte pdf eingebunden werden.
Code:
$zip->addFile(file_get_contents($pdf_file...)


Ich habs jetzt anders gelöst.
Erst die pdf_expose.php aufrufen->PDF speichern und dann mittels header location weiter an die export_zip.php reichen die dann die soeben gespeicherte PDF mit ins ZIP einbindet.
Funktioniert! * Ja, ja, ja... *

LG
oso

:closed:
  View user's profile Private Nachricht senden
Pixelpole

Dabei seit: 25.10.2004
Ort: Trier
Alter: 37
Geschlecht: Männlich
Verfasst Di 22.02.2011 00:42
Titel

Antworten mit Zitat Zum Seitenanfang

das Problem ist mit Sicherheit das nach dem schließenden php-tag der Datei noch ein Leerzeichen oder eine leere Zeile oder sowas steht. Einfach mal entfernen oder aber das schließende php-tag weglassen.
  View user's profile Private Nachricht senden
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Di 22.02.2011 00:46
Titel

Antworten mit Zitat Zum Seitenanfang

Kleiner Tipp: Du darfst die letzte php? Instruction weglassen - sollte man sogar - aus genau diesem Grund. Denn alles an whitespace dahinter - auch ein zeilenumbruch - wird durch implicit flush direkt zum Browser durchgereicht. Und gibts nen Body, ist kein platz mehr fürn header. Weil der bereits gesendet wurde. Mal mit dem http protokoll auseinander setzen, dann wird einiges klarer.

//zu spät. Kack mobi Keyboard... ist n echter krampf hier im 90s-mgi


Zuletzt bearbeitet von bacon am Di 22.02.2011 00:47, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
oso_de_la_nariz
Threadersteller

Dabei seit: 21.02.2011
Ort: Dresden
Alter: -
Geschlecht: Männlich
Verfasst Di 22.02.2011 00:48
Titel

Antworten mit Zitat Zum Seitenanfang

@Pixelpole
Sach ma bist Du Hellseher ? Grins
Stimmt nämlich!
Hättsch mir wahrscheinlich den Aufwand sparen können das umzubasteln * grmbl *

Danke!

oso

@bacon:
Wieder was gelernt .. muss ich gleich mal ausprobieren ... Auch Danke!


Zuletzt bearbeitet von oso_de_la_nariz am Di 22.02.2011 00:48, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Di 22.02.2011 12:32
Titel

Antworten mit Zitat Zum Seitenanfang

pole, bacon...

da ich da letztens mit einem kollegen am diskutieren war... würde in den fällen nicht auch eine ob_start / ob_flush variante helfen, um genau solche "ungewollten" ausgaben während des prozesses zu "unterdrücken"?
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Di 22.02.2011 12:39
Titel

Antworten mit Zitat Zum Seitenanfang

Jo letztlich schon ... du kannst das Verhalten alternativ auch via ob_implicit_flush() unterbinden. Ich hab mir einfach angewöhnt, das ins Thema Coding Convention zu schieben: einfach das schließende ?> konsequent weglassen.

Zuletzt bearbeitet von bacon am Di 22.02.2011 12:40, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
 
Ähnliche Themen Social Bookmarks erstellen & einbinden...
Datenbank einbinden in Homepage u. Abfrageeingabe erstellen?
Power Point 07: Farbschemen erstellen, Schrift einbinden
PDF Einbinden?
Einbinden von CuteNews
Klickzählung einbinden?
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.