Navigation
 Startseite
 Fachbücher
 Forum
 Webmaster News
 Script Newsletter
 Kontakt
 Script Installation
 Php
 Php Tutorials
 Impressum

Community-Bereich
 kostenlos Registrieren
 Anmelden
 Benutzerliste

Script Datenbank
 Script Archiv
 Script Top 20
 Screenshots
 Testberichte

Suche
 
Script Seite

Unsere Php Scripts
 Counter Script
 Umfrage Script
 Bilder Upload Script
 Terminverwaltung
 Simple PHP Forum
 RSS Grabber

Script Mods
 phpBB Adsense Mode

Tools und Generatoren
 .htpasswd Generator
 md5 Generator
 base64 Generator
 ICQ Generator
 Colorpicker
 Unix timestamp Tool
 TLD Liste
 Webkatalog Verzeichnis

Partner
Sprüche Treff

Hosterplus.de
Bekommen Sie Speicherplatz (Webspace), Domains und...
http://www.Hosterplus.de
Artfiles.de
Bietet Serviceorientierte Internetdienstleistungen...
http://www.Artfiles.de
 
 
 

PDF Dokument mit PHP erstellen

Sie befinden sich: Home > Php Tutorial > PDF Dokument mit PHP erstel...

PDF Dokument mit PHP erstellen



Eintrag am:  04.01.2010
Hits / Besucher:  25806
Sprache: Deutsch
Kategorie:  Einsteiger Tutorials...
Tutorial Art:  eigenes
 

Beschreibung


In diesem Tutorial möchte ich ihnen erklären, wie sie mit PHP ein PDF Dokument erstellen. Es gibt verschiedene Klassen in PHP, womit man ein PDF Dokument erstellen kann. Am meisten verbreitet ist die Klasse von FPDF, diese kann man direkt auf der Homepage kostenlos herunterladen. In unseren Tutorial verwenden wir die Klasse von FPDF.

Als erstes benötigen wir die Klasse, diese könnt Ihr in gezippter Form hier herunterladen. Die Zip Datei entpakt ihr bitte im gleichen Verzeichnis, wo das Script liegt. Danach benötigen wir eine Eingabemaske wo man die Daten eingeben kann, die später von den PHP Script zu ein PDF Dokument umgewandelt werden. In der Eingabemaske benötigen wir die Daten: Absender, Empfänger, Betreffzeile, Anrede, Text und Grußformel

So würde zum Beispiel unser Formular aussehen, was wir erstellen möchten.

Beispiel Formular

HTML Code für das Formular:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01
    Transitional//EN">
<html>
<head>
<title> PDF-Generator </title>
</head>
<body>
<form
action = "pdf.php"
method = "post"
target = "_blank">
<fieldset
style = "width:390px; border-color:#000;
    border-width:1px;">
<legend><span> PDF-Generator </span></legend><
    br>
<table
border = "0"
width = "300">
<tr>
<td
valign = "top"> Absender </td>
<td><textarea
name = "absender"
cols = "25"
rows = "4"
style = "width:250px;">
</textarea></td>
</tr>
<tr>
<td
valign = "top"> Empf&auml;
nger </td>
<td><textarea
name = "empfaeger"
cols = "25"
rows = "4"
style = "width:250px;">
</textarea></td>
</tr>
<tr>
<td
valign = "top"> Betreffzeile </td>
<td><input
name = "betreff"
value = ""
type = "text"
style = "width:250px;"></td>
</tr>
<tr>
<td
valign = "top"> Anrede </td>
<td><input
name = "anrede"
value = ""
type = "text"
style = "width:250px;"></td>
</tr>
<tr>
<td
valign = "top"> Text </td>
<td><textarea
name = "text"
cols = "25"
rows = "7"
style = "width:250px;">
</textarea></td>
</tr>
<tr>
<td
valign = "top"> Gru&szlig;
formel </td>
<td><input
name = "gruss"
value = ""
type = "text"
style = "width:250px;"></td>
</tr>
</table>
<input
name = "senden"
type = "submit"
value = "PDF erstellen"><br>
<br>
</fieldset>
</form>
</body>
</html>

Das HTML Formular muss man einfach in einen Texteditor kopieren und als index.html im gleichen Verzeichnis speichern, wo die Datei fpdf.php liegt. Als nächstes benötigen wir unser PHP Script, was automatisch die Daten von unserem HTML Formular entgegennimmt und in ein PDF Dokument umwandelt. Nachfolgend finden sie das PHP Script, dies müssen sie als pdf.php im gleichen Ordner speichern.

Der Code für das PHP-Script:

<?php
    
/**
    * Die Variable $_POST["absender"] überprüfen, ob
        dieser einen Wert zugewiesen ist.
    */
    
if (!isset($_POST["absender"])) $_POST["absender"]
        = 
'';
    
/**
    * Wen die Variable $_POST["absender"] leer ist,
        geben wir eine Fehlermeldung aus und brechen
        das Script mit exit ab.
    */
    
if ($_POST["absender"] == '') {
        echo 
'Bitte geben Sie einen Absender ein!';
        exit;
    }
    
/**
    * Die Variable $_POST["empfaeger"] überprüfen, ob
        dieser einen Wert zugewiesen ist.
    */
    
if (!isset($_POST["empfaeger"]))
        
$_POST["empfaeger"] = '';
    
/**
    * Wen die Variable $_POST["empfaeger"] leer ist,
        geben wir eine Fehlermeldung aus und brechen
        das Script mit exit ab.
    */
    
if ($_POST["empfaeger"] == '') {
        echo 
'Bitte geben Sie ein Empfänger ein!';
        exit;
    }
    
/**
    * Die Variable $_POST["betreff"] überprüfen, ob
        dieser einen Wert zugewiesen ist.
    */
    
if (!isset($_POST["betreff"])) $_POST["betreff"] =
        
'';
    
/**
    * Wen die Variable $_POST["betreff"] leer ist,
        geben wir eine Fehlermeldung aus und brechen
        das Script mit exit ab.
    */
    
if ($_POST["betreff"] == '') {
        echo 
'Bitte geben Sie eine Betreffzeile ein!';
        exit;
    }
    
/**
    * Die Variable $_POST["anrede"] überprüfen, ob
        dieser einen Wert zugewiesen ist.
    */
    
if (!isset($_POST["anrede"])) $_POST["anrede"] =
        
'';
    
/**
    * Wen die Variable $_POST["anrede"] leer ist,
        geben wir eine Fehlermeldung aus und brechen
        das Script mit exit ab.
    */
    
if ($_POST["anrede"] == '') {
        echo 
'Bitte geben Sie eine Anrede ein!';
        exit;
    }
    
/**
    * Die Variable $_POST["text"] überprüfen, ob
        dieser einen Wert zugewiesen ist.
    */
    
if (!isset($_POST["text"])) $_POST["text"] = '';
    
/**
    * Wen die Variable $_POST["text"] leer ist, geben
        wir eine Fehlermeldung aus und brechen das
        Script mit exit ab.
    */
    
if ($_POST["text"] == '') {
        echo 
'Bitte geben Sie einen Text ein!';
        exit;
    }
    
/**
    * Die Variable $_POST["gruss"] überprüfen, ob
        dieser einen Wert zugewiesen ist.
    */
    
if (!isset($_POST["gruss"])) $_POST["gruss"] = '';
    
/**
    * Wen die Variable $_POST["gruss"] leer ist, geben
        wir eine Fehlermeldung aus und brechen das
        Script mit exit ab.
    */
    
if ($_POST["anrede"] == '') {
        echo 
'Bitte geben Sie eine Grußformel ein!';
        exit;
    }
    
/**
    * Festlegen des Verzeichnisses, wo die
        Schriftarten gespeichert sind.
    */
    
define('FPDF_FONTPATH''font/');
    
/**
    * Laden der FPDF Class
    */
    
include('fpdf.php');
    
/**
    * Neues Objekt erstellen
    */
    
$pdf = new FPDF();
    
/**
    * Beginnen mit den erstellen von PDF Dokument.
    */
    
$pdf->Open();
    
/**
    * Eine Seite in PDF Dokument hinzufügen.
    */
    
$pdf->AddPage();
    
/**
    * Das Logo einbinden, das Logo muss die Maße
        130x30 haben, ansonsten müssen die Maße
        entsprechend der Bildgröße angepasst werden.
    */
    
$pdf->Image('logo.jpg''130''30''0''0');
    
$pdf->Ln(18);
    
/**
    * Den Absender mit der Schriftart "Arial"
        schreiben.
    */
    
$pdf->SetFont('Arial''I'12);
    
$pdf->Write(6$_POST["absender"]);
    
$pdf->Ln(15);
    
/**
    * Den Empfänger mit der Schriftart "Arial"
        schreiben.
    */
    
$pdf->SetFont('Arial''B'12);
    
$pdf->Write(6$_POST["empfaeger"]);
    
$pdf->Ln(15);
    
/**
    * Den Betreff mit der Schriftart "Arial" schreiben.
    */
    
$pdf->SetFont('Arial''I'14);
    
$pdf->Write(6$_POST["betreff"]);
    
$pdf->Ln(15);
    
/**
    * Die Anrede mit der Schriftart "Arial" schreiben.
    */
    
$pdf->SetFont('Arial'''14);
    
$pdf->Write(6$_POST["anrede"]);
    
$pdf->Ln(15);
    
/**
    * Den Text mit der Schriftart "Arial" schreiben.
    */
    
$pdf->SetFont('Arial'''14);
    
$pdf->Write(6$_POST["text"]);
    
$pdf->Ln(15);
    
/**
    * Die Grußformel mit der Schriftart "Arial"
        schreiben.
    */
    
$pdf->SetFont('Arial''B'14);
    
$pdf->Write(6$_POST["gruss"]);
    
$pdf->Ln(15);
    
/**
    * Das PDF Dokument ausgeben.
    */
    
$pdf->Output("dokument.pdf""D");
?>
 

Wenn man diese zwei Dateien im gleichen Ordner wie die fpdf.php gespeichert hat, muss man den gesamten Ordner auf den Webspace übertragen. Danach kann man das Formular aufrufen und mit entsprechender Eingabe und absenden des Formulars wird in einen neuen Fenster das PDF Dokument ausgegeben. Wichtig ist hierbei, dass man vorher noch im PHP Script, was oben aufgeführt ist den Eintrag für das Logo anpasst. Wenn kein Logo mit auf den Server übertragen wird, kann das PDF Dokument mit den PHP Script nicht ordnungsgemäß generiert werden.

Ihr könnt das gesamte Script, was in diesen PHP Tutorial behandelt wurde, hier herunterladen. Bei Fragen zu diesen PHP Tutorial, möchte ich euch bitten direkt im Forum eure Frage zu stellen. In unserer Tutorial Datenbank haben wir bereits nachfolgende Funktionen behandelt, die auch entsprechend in diesen Tutorial vorkommen. Wenn ihr diese Tutorials noch nicht gelesen habt, könnt ihr dies an der Stelle nachholen.

Funktionen die in diesem Tutorial verwendet wurden:

echo - Text ausgeben mit PHP.
isset() - Eine Variable prüfen, ob ein Inhalt enthalten ist.
If- Anweisung - Erklärung wie man die If - Anweisung verwenden kann in PHP.
include() - Hier wird erklärt wie man den PHP Befehl include() benutzen kann.
$_POST[] - Erklärung wie man Daten an ein Formular übergibt.

 

Tags


 

Verlink uns, wenn Dir das Tutorial gefallen hat:
Artikel hinzufügen bei: