Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
mehrseitige PDF-Dokumente [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
mehrseitige PDF-Dokumente


 
Trompetenkäfer
26-03-2005, 21:58 
 
Hi Ihr,
wie erstellt man mit PHP ein PDF-Dokument was mehrere Seiten hat ??? Also eine Seite zu generieren ist kein Problem, aber mehrere funzt irendwie nicht. Eine Seite hab ich nach folgendem Prinzip gemacht, was auch - bis auf den Teil mit der while-Schleife, die die zweite Seite erzeugen soll - prima funzt:


...
pdf_begin_page($PDF, 595, 842);
pdf_setfont($PDF, $font, 8.0);
pdf_show_boxed($PDF,$Text0,42,687,254,10,"left");
pdf_setfont($PDF, $font, 12.0);
pdf_show_boxed($PDF,$Text1,43,490,251,190,"left");
pdf_show_boxed($PDF,$Text2,305,500,247,200,"left");
pdf_show_boxed($PDF,$Text3,41,305,250,200,"left");
$nr1 = pdf_show_boxed($PDF,$Text4,41,50,255,350,"left");
$nr2 = pdf_show_boxed($PDF,$Text5,320,50,232,350,"left");
pdf_setfont($PDF, $font, 8.0);
pdf_show_boxed($PDF,$Text6,41,19,515,10,"center");
pdf_end_page($PDF);
while($nr1>0 || $nr2>0) { pdf_begin_page($PDF, 595, 842);
pdf_setfont($PDF, $font, 12.0);
if ($nr1>0) $nr1 = pdf_show_boxed($PDF, substr($Text4, -$nr1), 40, 735, 515, 715, "left");
if ($nr1>0) $nr2 = pdf_show_boxed($PDF, substr($Text5, -$nr2), 220.0, 450.0, 190.0, 100.0, "left");
pdf_show_boxed($PDF,$Text6,41,19,515,10,"center");
pdf_end_page($PDF); // Zeile 290
}
...


Folgende Fehlermeldung gibts da nun, wenn man die while-Schleife so drin hat, wie in dem obigen Quellcode:
Fatal error: Maximum execution time of 30 seconds exceeded in /www/htdocs/xxx/xxx/xxx.php on line 290
Fatal error: PDFlib error: function 'PDF_delete' must not be called in 'page' scope in Unknown on line 0
Nehme ich den while-Teil raus, funktioniert alles bestens, aber es entsteht eben nur ein Dokument mit einer Seite.

 
Floriam
26-03-2005, 22:34 
 
Fatal error: Maximum execution time of 30 seconds exceeded in /www/htdocs/xxx/xxx/xxx.php on line 290

Meiner Meinung nach hat PHP immer sehr hilfreiche Fehlermeldung, falls du Englisch kannst (was für jeden Programmierer eigentlich Pflicht ist) dann kannst du auch die Fehlermeldungen übersetzen und dir somit selbst weiterhelfen, ansonsten gibt es auch Webseite welche einen Übersetzungs-Service anbieten, zwar nicht toll aber der Sinn wird eventuell deutlich.. ;)

 
Trompetenkäfer
26-03-2005, 22:37 
 
Ach wie ich solche Kommentare liebe... wieso gibts eigentlich immer wieder Leute, die meine Beiträge nicht komplett lesen ??? Es geht hier konkret darum, wie man mit PHP mehrseitige PDF-Dokumente erzeugen kann. Um nichts anderes !

 
Floriam
26-03-2005, 22:51 
 
Wie du mehrseitige PHP Dokumente erzeugen kannst weißt du ja anscheinend, mit php_begin_page() und php_end_page()

Wenn das deine Frage war dann ist sie ja hiermit beantwortet.. ;)


Wenn deine Frage allerdings ist wieso das PDF Dokument nicht erzeugt wird dann kann ich nur auf den Fehler zeigen und dir sagen das die max. Ausführungszeit überschritten worden ist, d.h. dass das Script a) zu viel Zeit braucht oder b) eine Endlosschleife ist.

 
Trompetenkäfer
27-03-2005, 01:48 
 
Oh man... Leute, jetzt hab ich hier völlig umsonst Panik geschoben, ich dachte, es gäbe ein Problem mit den PDF-spezifischen Befehlen und Funktionen, dabei hatte ich nur einen Tippfehler. Es lag an: if ($nr1>0)... Das hatte ich zweimal im Quelltext stehen, weshalb es eine Endlosschleife gab. Sorry ! Danke trotzdem !

 
Trompetenkäfer
27-03-2005, 01:52 
 
Falls mal ein Admin dieses Forums diesen Beitrag lesen sollte: er kann getrost und gern - ausdrücklich mit meiner Genehmigung - gelöscht werden ! Bringt eh keinen weiter ! Ich Trottel... wie peinlich !


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:13 Uhr.