Veröffentlicht 21. Oktober 200222 j 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
21. Oktober 200222 j 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
21. Oktober 200222 j Autor 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
21. Oktober 200222 j 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; ?>
21. Oktober 200222 j Autor 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?
21. Oktober 200222 j 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
21. Oktober 200222 j Autor 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.
14. Februar 200322 j 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)?
14. Februar 200322 j Autor hi, bist du sicher, dass du vorher nichts ausgibst? Es könnte schon ein Leerzeichen vor PHP- Tags zur Problemen führen!
14. Februar 200322 j <?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?
14. Februar 200322 j 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
14. Februar 200322 j Betaversion von pdflib?!? Welche pdflib-Version hast du denn, und welche php-Version?
14. Februar 200322 j 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
20. Februar 200322 j Und du bist sicher das du keine Betaversion gesaugt hast? Schonmal die Registry durchforstet nach alten Beta-Schlüsseln?
20. Februar 200322 j 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.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.