Vollständige Version anzeigen : FPDF: php ein pdf Dokument mit einer Tabelle erstellen


BladeFire
31.03.2015, 19:27

Hallo,

ich versuche zurzeit mit php (fpdf) eine Tabelle zu erstellen. Doch leiter klappt das ganze nicht so wie ich es möchte. Ich schaffe esdie Tabelle so zu erstellen wie ich es möchte, solange alle Text der Zellen kleiner sind als die Zelle.

$pdf->SetFont('Arial','',5);
$pdf->setfillcolor(180);
$tabellenanfang = $pdf->GetY()+15;
$pdf->SetX(10);
$pdf->SetY($tabellenanfang);
$ueberschriften = array("Titel","Beschreibung","Tag","mintn","Kosten","Betreuer1","Betreuer2","Startzeit","Endzeit","Treffpunkt","Ort");

for ($i = 1; $i <= count($ueberschriften); $i++) {
$pdf->cell(280/ count($ueberschriften),10,$ueberschriften[$i-1],1,0,"C",1);
}
$pdf->ln();

$sql = 'SELECT * from kurse';

$stmt = mysqli_prepare($link,$sql);
mysqli_stmt_execute($stmt);
mysqli_stmt_store_result($stmt);
mysqli_stmt_bind_result($stmt,$knr, $titel, $beschreibung, $tag, $mintn, $kosten, $betreuer1,$betreuer2,$beginnzeit,$endezeit,$treffpunkt,$ort,$sj);
while (mysqli_stmt_fetch($stmt))
{
$pdf->cell(280/ count($ueberschriften),10,$titel,1,0,"C",0);
$pdf->cell(280/ count($ueberschriften),10,$beschreibung,1,0,"C",0);
$pdf->cell(280/ count($ueberschriften),10,$tag,1,0,"C",0);
$pdf->cell(280/ count($ueberschriften),10,$mintn,1,0,"C",0);
$pdf->cell(280/ count($ueberschriften),10,$kosten,1,0,"C",0);
$pdf->cell(280/ count($ueberschriften),10,$betreuer1,1,0,"C",0);
$pdf->cell(280/ count($ueberschriften),10,$betreuer2,1,0,"C",0);
$pdf->cell(280/ count($ueberschriften),10,$beginnzeit,1,0,"C",0);
$pdf->cell(280/ count($ueberschriften),10,$endezeit,1,0,"C",0);
$pdf->cell(280/ count($ueberschriften),10,$treffpunkt,1,0,"C",0);
$pdf->cell(280/ count($ueberschriften),10,$ort,1,0,"C",0);
$pdf->ln();
}

$pdf->Output();


Jedoch habe ich ein problem wenn der inhalt größer ist.
Ich habe es bereits mit $pdf->multiCell probiert. Jedoch habe ich dann das Problem, das sich nur dieses eine feld wo zuviel text drinnen ist, vergrößert.

Wie soll ich vorgehen?

Hardware Preisvergleich | Amazon Blitzangebote!

Videos zum Thema
Video Loading...
Nanobyte
31.03.2015, 19:46

Ich habe vor einer ganzen weile das selbe probiert und habe dann zum Schluss HTML2PDF (;html2pdf~fr/de/default) genutzt ;)


BladeFire
31.03.2015, 23:03

Danke für deine Antwort.

Mit html2pdf hatte ich es auch schon probiert. Jedoch hat es dennoch nicht funktioniert. Bei einem langen text, der größer als die Zelle war, hat sich die gesamte Tabelle verschoben.

Nun, angeregt durch dein Kommentar, habe ich es nochmal probiert und bin auf die idee gekommen wordwrap() zu benutzen um Zeilenumbrüche herbeizurufen. Es scheint nun (zumindest besser als zuvor) zu funktionieren.

Sollte jemand auch eine lösung mit fpdf haben, bitte ich denjenigen das auch noch hier zu posten. (Ich habe das Gefühl, das HTML2PDF eine Holzhammer lösung ist;)


Chrisomator
01.04.2015, 01:04

vonderborn~com &raquo; Erweiterte Tabellen mit FPDF (Rechnungen, Belege, Mahnungen, Listen, ..;) (;;;vonderborn~com/erweiterte-tabellen-mit-fpdf;php)

Benutze ich mit ein paar fixes hier und da. Funktioniert erstaunlich gut.

LG


Ähnliche Themen zu FPDF: php ein pdf Dokument mit einer Tabelle erstellen
  • [HTML] Tabelle erstellen
    Hi, ich muss mehrere HTML Tabellen erstellen und im PHPKIT einfügen;Das erstellen ist kein Problem,ich benutze das Programm super HTML,jedoch entstehen dadurch leerzeichen,wodurch die Tabelle weit unten im PHPKIT ist,gibt es eine einfachere möglichkeit,als dieses nervige entfernen der leerzeichen [...]

  • [C#] OpenOffice (version 3.3) Dokument mit C# erstellen ?
    Moin, ich beschäftige mich grad mit OpenOffice und C# und ich versuche über Verweise ein Dokument zu erstellen. Bis zu der Version 2;4;3 ging alles noch reibungslos, aber seit der Version 3;0 geht nichts mehr. :angry: Die assembly´s waren immer in dem Installationsverzeichnis von Open Offic [...]

  • CSS-Dokument erstellen
    Hi, habe bis jetzt CSS immer direkt ins HTML-Dokument eingebunden. Da ich aber, wenn ich etwas verändern will, nicht immer jedes Dokument bearbeiten muss, will ich gerne ein CSS-Dokument machen! Nur habe ich kP wie ich das jetzt mache! Jedenfalls muss hinter dem Dokument ;css stehen :) Für jede H [...]

  • [SQL] Tabelle mit einer anderen Tabelle Sortieren
    Hi, ich hab ne Datenbank mit 2 Tabellen. In einer sind Namen, denen immer eine Nummer zugeordnet ist. In den anderen habe ich die nummern von den Leuten und noch Ergebnisse stehen (das ganze ist für ne meisterschaft). Ich hab jetzt das Problem, dass ich die Tabelle mit den Ergebnissen nach Namen a [...]



raid-rush.ws | Imprint & Contact pr