PDF Serienbrief aus PHP erstellen

Kufstein

B1G-Software-Kunde
#1
Hallöchen zusammen

Ich hab da so ein Problem:

Ich habe eine MySQL Datenbank mit Adressen. Nun würde ich gerne an alle Adressen einen Serienbrief schreiben, wo sich für jenden Brief die Anrede und die Adresse ändern.
Ich denke es ist nur möglich eine PDF Datei zu erstellen, weil ich bei HTML keine Seitenumbrüche auf dem Drucker ausgeben kann.

Leider habe ich noch nie mit PHP eine PDF Datei erstellt. Wie geht das, und wie plaziere ich ein Logo und Fusszeile auf dem Brief. Hat mir da jemand eine Anleitung oder ein Demo auf deutsch.

Vielen Dank vorab.

Gruss Claudio
 

patrick

Staff member
B1G-Software-Kunde
#2
Hi,

das geht auch mit Word super. Exportiere einfach die Daten aus der MySQL-Tabelle in eine CSV-Datei (geht z.B. mit PHPMyAdmin) und speicher die mit Excel in eine XLS-Datei um und benutze dann die Serienbrieffunktion von Word.

Wenn das keine Alternative ist, empfehle ich FPDF: http://fpdf.de/ Ist ganz einfach zu benutzen. Schau dir am besten die Beispiele mal an.
 

Kufstein

B1G-Software-Kunde
#3
Hi,

das geht auch mit Word super. Exportiere einfach die Daten aus der MySQL-Tabelle in eine CSV-Datei (geht z.B. mit PHPMyAdmin) und speicher die mit Excel in eine XLS-Datei um und benutze dann die Serienbrieffunktion von Word.

Wenn das keine Alternative ist, empfehle ich FPDF: http://fpdf.de/ Ist ganz einfach zu benutzen. Schau dir am besten die Beispiele mal an.
Word ist fpr mich keine Alternative, da ich das relativ oft gemacht werden muss und nicht jeder Zugriff auf die Datenbank hat. Ich schau mir mal das FPDF an.
 

Kufstein

B1G-Software-Kunde
#4
hallöle zusammen.


Ich habe mich jetzt mal damit beschäftig und habe folgendes Problem:

Habe mir einen kleinen Musterbiref gemacht nach dem Beispiel von fpdf.de. Wenn ich nur Text für die erste Seite habe, erscheint alles richtg. Wenn ich allerdings mehere Zeilen hab die sich auf den zweite Seite beziehen, Verzeerts mir auf der Zweiten Seite den Header $this->Cell(0,4, FIRMA_MOTTO,0,0,'C'); steht. Ebenfalls verziehts mir den Namen Max Mustermann Geschäftsleitung. Hier mal mein Code:
PHP:
<?php
require('function.php');
require('fpdf/fpdf.php');

class PDF extends FPDF
{
//Kopfzeile
function Header()
{
    //Logo
    $this->Image('maus.jpg',160,18,33);
    //Arial fett 15
    $this->SetFont('Arial','B',13);
    //nach rechts gehen
    $this->Cell(1);
    //Titel
    $this->Cell(0,8,FIRMA_NAME . ", " . FIRMA_STRASSE . ", " . FIRMA_PLZ . " " . FIRMA_ORT . " · " . FIRMA_TEL . ", " . FIRMA_EMAIL ,'B',0,0);
$this->Ln(9);  
$this->SetFont('Arial','I',12);  
$this->Cell(0,4, FIRMA_MOTTO,0,0,'C');    
//Zeilenumbruch
    $this->Ln(20);
}

//Fusszeile
function Footer()
{
    //Position 1,5 cm von unten
    $this->SetY(-15);
    //Arial kursiv 8
    $this->SetFont('Arial','I',8);
    //Seitenzahl
    $this->Cell(0,10,'Seite '.$this->PageNo().'/{nb}',0,0,'C');
    $this->SetLeftMargin(200);
}
}

//Instanciation of inherited class
$pdf=new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',12);
$pdf->SetY('50');

$pdf->Cell(0,4,"Herr",0,1);
$pdf->Cell(0,4,"Max Moritz Mustermann",0,1);
$pdf->Cell(0,4,"Mustergasse 2",0,1);
$pdf->Cell(0,4,"8200 Schaffhausen",0,1);
$pdf->Cell(0,4,"Schweiz",0,1);
$pdf->SetY('60');
$pdf->SetX(-50);
$pdf->Cell(0,10,FIRMA_ORT . ", den " . date("d.m.Y"),0,1);
$pdf->Ln(20);
$pdf->SetFont('Times','B',12);
$pdf->Cell(0,10,"Testseite",0,1);
$pdf->SetFont('Times','',12);
$pdf->Ln(15);
$pdf->Cell(0,5,"Sehr geehrter Herr Mustermann",0,1);
$pdf->Ln(10);
$pdf->Cell(0,5,"Unser Unternhemen .. bal bla bla .. Informatik .. bla bla bla .. buh mann  ... pla
pla.",0,1);
$pdf->Cell(0,5,"Geben Sie uns doch bitte die Chance uns persönlich bei Ihnen vorzustellen. 
pla.",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Cell(0,5,"Bla Bla Bla Knaf Knaf Knaf Kanf Kanf Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla",0,1);
$pdf->Ln(12);
$pdf->Cell(0,5,"Mit Freundlichen Grüssen",0,1);
$pdf->Ln(8);
$pdf->Cell(0,5,"Max Mustermann",0,1);
$pdf->Cell(0,5,"Leiter Informatik",0,1);
$pdf->Output();
?>
 
Top