kathi008 Geschrieben 21. Oktober 2002 Geschrieben 21. Oktober 2002 Hallo Leute! :confused: Ich will ein PDF-Document in PHP erstellen und im Internet Explorer anzeigen. Ich hab schon gesehen, wie im Explorer der Acrobat Reader aufgegangen ist und die Datei dargestellt hat. Wie kann ich das aus PHP aufrufen? Danke voraus, Kathi Zitieren
root@localhost Geschrieben 21. Oktober 2002 Geschrieben 21. Oktober 2002 hi kathi, hier findest du alle php-pdf-funktionen und ein paar "copy´n ´paste" beispiele. wenn diese beispiele bei dir nicht funktionieren dann unterstützt deine php-version keine pdf-funktionen. viele späße damit ciao JJ Zitieren
kathi008 Geschrieben 21. Oktober 2002 Autor Geschrieben 21. Oktober 2002 Hallo nochmal, danke für die Funktionen. Das PDF-Dokument konnte ich erstellen, aber wie zwinge ich den Acrobat Reader im Browserfenster aufzugehen? Geschiet das automatisch? Kathi Zitieren
root@localhost Geschrieben 21. Oktober 2002 Geschrieben 21. Oktober 2002 probier mal das aus. bei mir geht der dann im browserfenster auf: <?php $pdf = pdf_new(); pdf_open_file($pdf); pdf_begin_page($pdf, 595, 842); pdf_set_font($pdf, "Times-Roman", 30, "host"); pdf_set_value($pdf, "textrendering", 1); pdf_show_xy($pdf, "A PDF document created in memory!", 50, 750); pdf_end_page($pdf); pdf_close($pdf); $data = pdf_get_buffer($pdf); header("Content-type: application/pdf"); header("Content-disposition: inline; filename=test.pdf"); header("Content-length: " . strlen($data)); echo $data; ?> Zitieren
kathi008 Geschrieben 21. Oktober 2002 Autor Geschrieben 21. Oktober 2002 Danke, ich krieg folgende Ausgabe: %PDF-1.3 %äãÃÃ’ 5 0 obj <> stream xÅ“s áÒw3P06PIã2T)@h¨`j `Ä!¹\ I. G…7…â€üäÃ’ÜÔ¼…ä¢ÔÄ’Ô…Ì<…ÜÔÜü¢JEÃÂ,.×.!gˆendstream endobj 6 0 obj 84 endobj 4 0 obj <> endobj 8 0 obj <> >> endobj 3 0 obj <> endobj 7 0 obj <> endobj 1 0 obj <> endobj 2 0 obj <> endobj xref 0 9 0000000000 65535 f 0000000548 00000 n 0000000602 00000 n 0000000351 00000 n 0000000188 00000 n 0000000015 00000 n 0000000170 00000 n 0000000454 00000 n 0000000291 00000 n trailer <] >> startxref 649 %%EOF Kann der Browser den Reader nicht starten? Oder ist irgendwo der Pfad falsch eingetragen? Zitieren
root@localhost Geschrieben 21. Oktober 2002 Geschrieben 21. Oktober 2002 also kathi, wo bzw. wie läuft dein php? auf nem windooze oder linux rechner? du musst php als modul (schimpft sich "mod_php4") am laufen haben damit es die "header" funktionen unterstützt. ich weiß nicht ob es eine php-version für win gibt die header-funktionen unterstützt?! die komischen zeichen kommen deswegen weil der browser nicht weiß was es für daten sein sollen und der header-befehl ( header("Content-type: application/pdf"); ) der dem browser sagt was es für ein inhalt ist, greift nicht. ciao jayjay Zitieren
kathi008 Geschrieben 21. Oktober 2002 Autor Geschrieben 21. Oktober 2002 Danke für die Hilfe. Ich hab das Problem gelöst. Ich hatte oben noch den HTML Tag für den Header gehabt. Nachdem der weg ist, funktioniert es. Zitieren
Spike Geschrieben 14. Februar 2003 Geschrieben 14. Februar 2003 Hi, ich will ein PDF erstellen und hole mir vorher einige Daten aus der Datenbank und include zwei php-Ressourcedateien (mit DB-Zugriffsdaten und Hilfsroutinen). Leider kommt immer die Fehlermeldung "Cannot add header information - headers already sent " Ich nutze folgende Header: header("Content-type: application/pdf"); header("Content-Length: $len"); header("Content-Disposition: inline; filename=hello_php.pdf"); print $buf; [/PHP] Ohne die DB-Abfragen und das Includen vorher funktioniert auch die Generierung und die PDF wird dargestellt, aber leider brauche ich ja die relevanten Daten aus der Datenbank. Woran könnte das liegen? Ich mache doch vorher keinen Output an den Browser (vor den Headern darf ja kein Output erfolgen)? Zitieren
kathi008 Geschrieben 14. Februar 2003 Autor Geschrieben 14. Februar 2003 hi, bist du sicher, dass du vorher nichts ausgibst? Es könnte schon ein Leerzeichen vor PHP- Tags zur Problemen führen! Zitieren
Spike Geschrieben 14. Februar 2003 Geschrieben 14. Februar 2003 <?php putenv("PDFLIBRESOURCE=../php/pdf-related/pdflib.upr"); include("db_connection.php"); $result = mysql_query("SELECT * FROM bestellungen where id = '$nr'"); while($row = mysql_fetch_row($result)) { $nr = $row[0]; $kunden_id = $row[1]; $vorname_name = $row[2]; $email = $row[3]; $abteilung1 = $row[4]; $abteilung2 = $row[5]; } $p = PDF_new(); PDF_open_file($p, ""); PDF_set_info($p, "Creator", "hello.php"); PDF_set_info($p, "Author", "Testauthor"); PDF_set_info($p, "Title", "Hello world (PHP)"); PDF_begin_page($p, 595, 842); $font = PDF_findfont($p, "Arial", "host", 1); if ($font) { PDF_setfont($p, $font, 18.0); } PDF_set_text_pos($p, 50, 700); PDF_show($p, $email); PDF_continue_text($p, "(test test)"); PDF_end_page($p); PDF_close($p); $buf = PDF_get_buffer($p); $len = strlen($buf); header("Content-type: application/pdf"); header("Content-Length: $len"); header("Content-Disposition: inline; filename=hello_php.pdf"); print $buf; PDF_delete($p); ?> [/PHP] In der includeten Dateien steht auch nur PHP-Code, in dem Falle die DB-Daten + Connect. Ich hab nirgendwo ein echo oder so, auch keine Leerzeichen vor dem <?php Tag. Ist die DB-Abfrage schuld? Alternative? Zitieren
DanielH Geschrieben 14. Februar 2003 Geschrieben 14. Februar 2003 Wo wir da mal beim Thema sind: Ich komme nicht mal dazu eine pdf-datei zu erzeugen: Fatal error: PDFlib error: Beta expired - retrieve new version from www.pdflib.com Egal ob ich eine gerade frisch gesaugte dll nehme oder eine selbst kompilierte - Immer kommt diese Meldung. Unter Win2k hab ich das Problem. Weiss jemand woran das liegt ? MfG Zitieren
Spike Geschrieben 14. Februar 2003 Geschrieben 14. Februar 2003 Betaversion von pdflib?!? Welche pdflib-Version hast du denn, und welche php-Version? Zitieren
DanielH Geschrieben 14. Februar 2003 Geschrieben 14. Februar 2003 Originally posted by Spike Betaversion von pdflib?!? Welche pdflib-Version hast du denn, und welche php-Version? Gerade gezogen hab ich die pdflib 4.0.3 und auf der Kiste hier ist ein php 4.0.6. Bei der pdflib ist aber eine Version für PHP 4.0.6 dabei. MfG Zitieren
Spike Geschrieben 20. Februar 2003 Geschrieben 20. Februar 2003 Und du bist sicher das du keine Betaversion gesaugt hast? Schonmal die Registry durchforstet nach alten Beta-Schlüsseln? Zitieren
Spike Geschrieben 20. Februar 2003 Geschrieben 20. Februar 2003 P.S. Ansonsten frag mal hier nach: http://groups.yahoo.com/group/pdflib/messages Das ist die offizielle PDFLib developers usergroup, wo u.a. der Erfinder von PDFLib den Leuten Hilfe gibt. Zitieren
Empfohlene Beiträge
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.