Portál AbcLinuxu, 10. května 2025 04:38

Dotaz: Tvorba pdf souboru pomoci FPDF

Jožin avatar 9.7.2007 19:34 Jožin | skóre: 8
Tvorba pdf souboru pomoci FPDF
Přečteno: 4767×
Odpovědět | Admin
Ahoj. Omlouvam se vsem programatorum v php a sql, ale uz vazne newim. Odesilam data z php formulare do mysql databaze. To je v poradku. Do toho sameho formulare je v klidu "vyfetchuju" pomoci mysql_fetch_object, ale kdyz chci data z databaze pouzit pri tvorbe pdf souboru, ktery tvorim pomoci fpdf, mam soubor doc.pdf s prazdnou strankou. Tady prikladam ten skript. Zatim se to ucim, takze chci pochopit zaklad a pak si budu hrat s umistenim atd. Nevite nekdo, kde v tom mam botu?
AddFont('Arial','','arial.php');
$pdf->AddPage();
$pdf->SetFont('Arial','');

$vysledek = mysql_query("select first_name, last_name from users where user_id='".$_SESSION['user_id']."'");
while ($zaznam = mysql_fetch_object($vysledek)):
$first_name_text=$zaznam->first_name." ";
$last_name_text=$zaznam->last_name." ";
$pdf->Cell(60,8, iconv("UTF-8", "ISO-8859-2", '.$first_name_text.'),1,1);
$pdf->Cell(20,8, iconv("UTF-8", "ISO-8859-2", '.$last_name_text.'),1,1,'R');
endwhile;

$pdf->Output();
?>
Kilo tuku vypadá vždycky dobře, když je na něm bradavka
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Jožin avatar 9.7.2007 19:52 Jožin | skóre: 8
Rozbalit Rozbalit vše Re: Tvorba pdf souboru pomoci FPDF
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nenakopiroval jsem to cele
require('../fpdf.php');
mysql_pconnect('localhost','xxx','xxx');
mysql_select_db('pokus');
$pdf=new FPDF();
Kilo tuku vypadá vždycky dobře, když je na něm bradavka
21.8.2007 12:32 ir
Rozbalit Rozbalit vše Re: Tvorba pdf souboru pomoci FPDF
Odpovědět | | Sbalit | Link | Blokovat | Admin
Právě s tím PDF taky zápolím.v Output() nemáš žádný název souboru, takže se žádné doc.pdf nevytváří, data se posílají přímo prohlížeči ve formátu PDF. Tak pokud se objevuje čistě prázdná stránka, posíláš nějaká data po odeslání PDF dokumentu (tj. po $pdf->Output();) nejspíš máš prázdný řádek za koncem těla scriptu "?>". Pokud by se objevila prázdná stránka s chybou "FPDF error: Some data has already been output, can't send PDF file" posíláš nějaká data před PDF dokementem (opět nejspíš prázdný řádek před tělem scriptu "
23.11.2007 00:45 Mojmir Volf
Rozbalit Rozbalit vše FPDF a přílohy do e-mailu

Tvorba PDF souborů je s FPDF skutečně radost, včetně grafiky, tabulek a podobných vylomenin. I odesílání příloh mailem jsem zvládl, ovšem do chvíle, než bylo nutné generovat PDF přílohy k mailu na serveru, kde není povolen zápis na disk. Veškeré pokusy skončí hláškou

FPDF error: Unable to create output file: test.pdf

Řešil někdo něco podobného? Někde jsem zahlédl způsob, který snad nepotřeboval pro vložení přílohy soubor uložený na disku, ale nedokážu ho znova najít a ani si nejsem jist, jestli využíval zrovna FPDF ...

23.11.2007 09:17 Richard Gavenda | skóre: 19 | Třinec
Rozbalit Rozbalit vše Re: FPDF a přílohy do e-mailu
Nechce se mi věřit, že by FPDF potřeboval zápis na disk. Jak vytváříte pdf? Není přece třeba vytvářet soubor, ale pracovat s vytvořeným PDF jako s řetězcem:
$pdf->Output('','S');
25.11.2007 12:03 Mojmir Volf
Rozbalit Rozbalit vše Re: FPDF a přílohy do e-mailu

Při vytváření přílohy pomocí

$pdfstring = $pdf->Output('','S');

a následného

$attach_obsah = chunk_split(base64_encode($pdfcontent));

se přílohy chovaly jako poškozené a skutečně jim fyzicky chybělo několik posledních bajtů. Pomohlo odebrání fontů a rastrových obrázků, ale ty jsou nutné pro čitelnost respektive použitelnost PDF výstupů. Nakonec se ukázalo, že k poškození příloh dochází až v Thunderbirdu a na serveru jsou v pořádku ...

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.