Poll

vLIB und FPDF verbinden?

Problem anders lösen
0 (0%)
vLIB und FPDF verbinden
0 (0%)
vLIB und FPDF nicht verbinden
1 (100%)

Total Members Voted: 1

Voting closed: Mon, 31. July 2006 - 16:25:03

Author Topic: vLIB und FPDF verbinden  (Read 931 times)

0 Members and 1 Guest are viewing this topic.

Hendrik

  • Guest
vLIB und FPDF verbinden
on: Mon, 24. July 2006 - 14:35:07
Hallo,
ich habe mir nun ein komplettes vLIB-Templatesystem geschaffen.
Dies funktioniert auch einwandfrei, wenn die Ausgabe der Templatevariablen
mittels   
Code: [Select]
{tmpl_var name=strasse}  in einen HTML-Bereich eingefügt wird.

Nun hatte ich jedoch den Gedanken, den einmal existierenden einfachen Variablenzugriff
auszunutzen, und eine "Druckausgabe" der Seite mittels FPDF http://www.fpdf.de/ zu realisieren.

Dabei tritt nun folgendes Problem auf:
Die Template-Variablen können nicht direkt in PHP-Quellcode eingebunden werden!

Meine *.tpl Datei sieht mit dem FPDF-Quellcode folgendermaßen aus:
Code: [Select]
<?php
require_once(fpdf.php);

$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont(Arial,B,16);
$pdf->Cell(40,10,$text);  //<----     hier muss der Inhalt der Template-Variablen rein  
$pdf->Output();
?>


Die Frage ist nun, wie kann ich das Realisieren?
Wie kann ich aus PHP heraus auf den Inhalt der Template-Variablen zugreifen.
Ich weis, daß dieses System eigentlich nicht zu diesem Zwecke geschaffen wurde, aber vielleicht gibt es doch eine Möglichkeit!

Mit freundlichen Grüßen
Hendrik


Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Re: vLIB und FPDF verbinden
Reply #1 on: Mon, 24. July 2006 - 15:16:30
Wenn es nicht mit der Methode "grab()" (Beispiel, Dokumentation) funktioniert, wird es nicht gehen.

Es könnte auch noch mit TMPL_PHPINCLUDE, aber ich habe so etwas noch nie gemacht und werde es auch nie machen. (PHP gehört nicht ins Template!)

FPDF benutzt Methoden, die ("$pdf->Cell(40,10,$text)") Zahlen und Text verarbeiten, das wirst Du IMHO nie in eine Template Engine bekommen. Wenn Du mit einer reinen PHP Template Engine arbeitest, könntest Du es hinbekommen, aber ob das dadurch übersichtlicher wird ...

Gruß
Claus

Hendrik

  • Guest
Re: vLIB und FPDF verbinden
Reply #2 on: Mon, 24. July 2006 - 16:11:33
Hallo ClausVB,

vom Prinzip her habe ich mir das schon so gedacht!
Da ich aber in der Doku nicht passendes dazu gefunden habe (wie du schon schriebst),
habe ich es noch einmal gepostet.
Das Problem ist eben, daß die Template-Variable nicht richtig im PHP-Code aufgelöst wird.
So ergibt sich eben bei folgendem Code:
Code: [Select]
<?php
require_once(fpdf.php);
$test "{tmpl_var name=strasse}";

$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont(Arial,B,16);
$pdf->Cell(40,10,$test);
$pdf->Output();
?>

folgende Ausgabe in der erstellten PDF:
Code: [Select]
<?php if (Array[strasse] !== null) { print(Array[strasse]); } ?>
Es fehlt mir also wirklich nur die Möglichkeit die Template-Variable in PHP richtig auszuwerten,
und das funktioniert eben nicht, bzw. ist eben nicht vorgesehen.

Trotz alledem vielen Dank für die Mithilfe.

Viele Grüße
Hendrik