RRH Postado Fevereiro 20, 2011 Denunciar Share Postado Fevereiro 20, 2011 Montei um formulário com php e css e gostaria de saber se é possível gerar um pdf após preenchê-lo. Já tentei aqui mas não obtive sucesso.Uploaded with ImageShack.us Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Andreia Regina Postado Fevereiro 21, 2011 Denunciar Share Postado Fevereiro 21, 2011 Olá!Posta o que você tem até agora para podermos orientar você. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Stoma Postado Fevereiro 22, 2011 Denunciar Share Postado Fevereiro 22, 2011 Dê uma procurada sobre a classe mPDF, com ela você poderá gerar arquivos PDF através de código HTML + PHP! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 XandyW Postado Fevereiro 22, 2011 Denunciar Share Postado Fevereiro 22, 2011 O mPDF é o melhor: aceita html e até css.http://mpdf.bpm1.com/ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ivan Ferrer Postado Fevereiro 22, 2011 Denunciar Share Postado Fevereiro 22, 2011 procure por dompdf: http://code.google.com/p/dompdf/ou fpdf: http://www.fpdf.org/Montei um formulário com php e css e gostaria de saber se é possível gerar um pdf após preenchê-lo. Já tentei aqui mas não obtive sucesso.Uploaded with ImageShack.us Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RRH Postado Março 28, 2011 Autor Denunciar Share Postado Março 28, 2011 (editado) Pessoal, andei meio sem tempo e só agora pude continuar esse post. Segue abaixo um link do que eu consegui até agora:http://www.rrh.orgfree.com/tpdf.php Editado Abril 1, 2011 por RRH Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Endor Postado Março 29, 2011 Denunciar Share Postado Março 29, 2011 Bom dia!Se servir o FPDF, posso te ajudar.Mas primeiro você tem que baixar o arquivo.Depois eu te passo alguns exemplos. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Wollny Postado Março 29, 2011 Denunciar Share Postado Março 29, 2011 Montei um formulário com php e css e gostaria de saber se é possível gerar um pdf após preenchê-lo. Já tentei aqui mas não obtive sucesso.Uploaded with ImageShack.usDá uma olhada em (http://www.htmlstaff.org/ver.php?id=9457) este tutorial dá uma orientação sobre o assunto utilizando o FPDF. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jefferson Oliveira Postado Março 29, 2011 Denunciar Share Postado Março 29, 2011 Claro !Eu fiz um POST de como gerar PDF no meu blogAcessa ai:http://jeffersonoliveira.com.br/2011/03/cr...mulario-em-php/ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RRH Postado Março 29, 2011 Autor Denunciar Share Postado Março 29, 2011 (editado) Bom dia!Se servir o FPDF, posso te ajudar.Mas primeiro você tem que baixar o arquivo.Depois eu te passo alguns exemplos.Desde que o fpdf faça o que estou precisando vai servir sim! Pode mandar o que tiver aí que vou testar aqui... Editado Março 29, 2011 por RRH Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Endor Postado Março 30, 2011 Denunciar Share Postado Março 30, 2011 (editado) Boa Noite.estou te enviando um exemplo de uso do fdpd.Sugiro que você retire as consultas existentes, pois seu programa não irá conseguir buscá-las, umas vez que não possui os bd.É uma maravilha o FPDF. Você vai se encantar.é claro que no começo, você vai aprender devagar.Antes de começar, você precisar baixar a biblioteca que está em:http://www.fpdf.org/O Bruno Augusto, criou este curso que talvez te ajude bastante:http://forum.wmonline.com.br/topic/182248-...-fpdf-completo/Meu exemplo:<?php import_request_variables("gP"); include ("../../conexao.php"); include ("../../biblio.php"); //DADOS DO PEDIDO $rol = "SELECT r.registro, r.empresacontr, r.dataadmi, r.id_func, f.nome, f.sexo FROM registro r, funcionario f WHERE r.id_registro='$id' AND f.id_func=r.id_func"; $exe_rol = mysql_query($rol); $resul_rol = mysql_fetch_array($exe_rol); $hoje = databr($termino,1); $dia_h = substr($hoje, 8,2)*1; $mes_h = substr($hoje, 5,2)*1; $ano_h = substr($hoje, 0,4); $dado = "SELECT cpts, serie_cpts FROM dado WHERE id_func='$resul_rol[id_func]'"; $exe_dado = mysql_query($dado); $resul_dado =mysql_fetch_array($exe_dado); define('FPDF_FONTPATH','../../pdf/fpdf/font/'); require_once("../../pdf/fpdf/fpdf.php"); $pdf=new FPDF('P', 'mm', 'A4'); $pdf->Open(); $pdf->AddPage(); $pdf->SetTopMargin(10); $emp = "SELECT nome FROM empresa WHERE id_empresa='2'"; $exe_emp =mysql_query($emp); $resul_emp=mysql_fetch_array($exe_emp); $qtd_let= strlen($resul_emp[nome]); $empresa = substr($resul_emp[nome], 12, ($qtd_let-12)); $pdf->SetXY(10, 20); $pdf->SetLineWidth(0.4); $pdf->Rect('20', '20', '180', '24', ''); $pdf->SetFont('Helvetica', 'B', 14); $pdf->ln(3); $pdf->cell(10); $pdf->Cell(30, 20, $pdf->Image('../../images/aguia.jpeg', 30, 23,20)); $pdf->Cell(150, 30, $pdf->Cell(0, 20,"PVG POLIVIG", '','L', ''), $pdf->ln(13), $pdf->Cell(40), $pdf->Cell(150, 5, "$empresa", '', 'L', '')); $pdf->SetFont('Helvetica', 'I', 14); $pdf->ln(30); $pdf->SetFont('Helvetica', 'B', 15); $pdf->SetLineWidth(0.4); $pdf->Cell(10); $pdf->Line('20', '72', '200', '72'); $pdf->Cell(145, 5, "Término de Contrato de Experiência", '', '', 'C', ''); $pdf->SetFont('Helvetica', '', 10); $pdf->Cell(30, 5, "Data: $termino", '', '', 'C', ''); IF($resul_rol[sexo]=="F"){$pessoa="A Sra.";}ELSE{$pessoa="Ao Sr.";} $pdf->ln(30); $pdf->Cell(10); $pdf->Cell(20, 5, "$pessoa", '', '', 'L', ''); $pdf->ln(5); $pdf->Cell(10); $pdf->Cell(150, 5, "$resul_rol[nome]", '', '', 'L', ''); $pdf->ln(5); $pdf->SetFont('Helvetica', 'B', 8); $pdf->Cell(10); $pdf->Cell(150, 5, "CPTS: $resul_dado[cpts] - Série: $resul_dado[serie_cpts]", '', '', 'L', ''); $pdf->ln(30); $pdf->Cell(10); $pdf->SetFont('Helvetica', '', 11); $pdf->MultiCell(180, 5, "Pelo presente o notificamos que a partir desta data não mais serão utilizados os seus serviços pela nossa empresa, e por isso, vimos avisá-lo (a) que o contrato firmado em ".databr($resul_rol[dataadmi],0)." pelo prazo de $qtddias dias, se encerra nesta data.", '0', '', ''); $pdf->ln(20); $pdf->Cell(10); $pdf->Cell(180, 5, "Atenciosamente,", '0', '', ''); $pdf->ln(15); $pdf->Cell(10); $pdf->Cell(180, 5, "São Paulo, $dia_h de ".nomemes($mes_h)." de ".$ano_h."", '0', '', ''); $pdf->ln(20); IF($exe_rol[empresacontr]==1){$compri=137;}ELSE{$compri=97;} $pdf->Line('20', '205', "$compri", '205'); $pdf->Cell(10); $pdf->Cell(180, 5, "$resul_emp[nome]", '0', '', ''); $pdf->ln(20); $pdf->Cell(10); $pdf->Cell(180, 5, "Ciente,", '0', '', ''); $pdf->ln(15); $pdf->Line('20', '240', "100", '240'); $pdf->Cell(10); $pdf->Cell(180, 5, "$resul_rol[nome]", '0', '', ''); $pdf->ln(5); $pdf->Cell(10); $pdf->SetFont('Helvetica', 'B', 8); $pdf->Cell(150, 5, "CPTS: $resul_dado[cpts] Série: $resul_dado[serie_cpts]", '', '', 'L', ''); //Aqui é para colocar os dados $pdf->SetFont('Helvetica', 'B', 7); $pdf->Output(); ?>Espero que te seja útil.Abraços Editado Março 31, 2011 por kuroi Adicionar tag CODE Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RRH Postado Março 31, 2011 Autor Denunciar Share Postado Março 31, 2011 Caro Endor;Será que você pode postar o resulado do seu código (arquivo pdf) pra ver como ficou? A minha dúvida é se há possibilidade de montar o formulário que postei aqui com o fpdf... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Endor Postado Março 31, 2011 Denunciar Share Postado Março 31, 2011 Boa Tarde.Não, Não dá.Mas com certeza dá para fazer o que você quiser.Mas pelo que vi, você nem sequer olhou o programa.Assim não funciona.Abraços. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RRH Postado Março 31, 2011 Autor Denunciar Share Postado Março 31, 2011 Não só olhei como consegui fazer alguns testes aqui gerando uma lista usando o meu banco de dados mysql, coloquei bordas nas células, configurei margens da página, e um monte de coisas que tem no tutorial do Bruno Augusto que eu já havia encontrado em pesquisas no google. O que não estou conseguindo e nem sei se tem como fazer é criar as células e colocar títulos nelas como no print que coloquei no primeiro post. Não estou querendo que ninguém faça tudo pra mim, mas só me mostre como iniciar. Desde já agradeço sua força e presteza em me ajudar. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Stoma Postado Abril 1, 2011 Denunciar Share Postado Abril 1, 2011 (editado) Utilize a classe mPdf ao invés da fpdf que é uma extensão da fpdf, pois nela você consegue colocar código HTML através da função WriteHTML! Editado Abril 1, 2011 por Stoma Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RRH Postado Abril 1, 2011 Autor Denunciar Share Postado Abril 1, 2011 Utilize a classe mPdf ao invés da fpdf que é uma extensão da fpdf, pois nela você consegue colocar código HTML através da função WriteHTML!Ok, mas no link que postei acima foi o que eu consegui com o mPDf. Parece que ele não interpreta bem o css...Veja o código:<?php ob_start(); //inicia o buffer ?> <!-- tables, DIVs, consultas no banco de dados, blablabla, imagens e todo o conteudo PHP com HTML --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>XXXXXXXXXXXXXXXXXXX</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="./css/comunica.css" rel="stylesheet" type="text/css"> </head> <body> <table class="tblGrid"> <tr><td> <form name="comunica" method="post"> <center class="cabecalho">XXXXXXXXXXXXXXXXXXXXXXXXXXXX</center> <fieldset class="nr"> <legend align="center">XX</legend> <label><input type="text" name="nr" class="nr" value=""></label> </fieldset> <fieldset class="op"> <legend align="center">XXX</legend> <label><input type="text" name="op" class="op" value="" readonly="readonly"></label> </fieldset> <fieldset class="data"> <legend align="center">XXXX</legend> <label><input type="text" name="data" class="data" value=""></label> </fieldset> <fieldset class="nat"> <legend align="center">XXX</legend> <label><input type="text" name="nat" class="nat" value=""></label> </fieldset> <fieldset class="vei"> <legend align="center">XX</legend> <label><input type="text" name="vei" class="vei" value=""></label> </fieldset> <fieldset class="sst"> <legend align="center">XXXXXX</legend> <label><input type="text" name="sst" class="sst" value=""></label> </fieldset> <fieldset class="ht"> <legend align="center">XXXXXXX</legend> <label><input type="text" name="ht" class="ht" value=""></label> </fieldset> <fieldset class="hi"> <legend align="center">XXXXXX</legend> <label><input type="text" name="hi" class="hi" value=""></label> </fieldset> <fieldset class="hf"> <legend align="center">XXXXXX</legend> <label><input type="text" name="hf" class="hf" value=""></label> </fieldset> <fieldset> <legend align="center">XXXXXXXXXXXXXXXXXXXX</legend> <label>XXXX<input type="text" class="endfato" name="endfato" maxlength="150" value=""></label> <label>XXXXXX<input type="text" size="18" name="bairrofato" maxlength="50" value=""></label> <label>XXXXXXXXX<input type="text" size="15" name="munfato" maxlength="50" value=""></label> </fieldset> <fieldset> <legend align="center">XXXXXXXXXXXXXXXX</legend> <label><input class="box" type="text" name="box1" maxlength="150" value=""></label> <label>XXXX<input type="text" class="nome" name="nome1" maxlength="150" value=""></label> <label>XXXXX<input type="text" size="1" name="idade1" maxlength="50" value=""></label> <label>XXXX<input type="text" class="fone" name="fone1" maxlength="50" value=""></label><br /> <label>XXX<input type="text" class="end" name="end1" maxlength="150" value=""></label> <label>XX<input type="text" size="10" name="nr1" maxlength="50" value=""></label> <label>XXXXXX<input type="text" class="bairro" name="bairro1" maxlength="50" value=""></label> </fieldset> <p> <fieldset> <label><input class="box" type="text" name="box2" maxlength="150" value=""></label> <label>XXXX<input type="text" class="nome" name="nome2" maxlength="150" value=""></label> <label>XXXXX<input type="text" size="1" name="idade2" maxlength="50" value=""></label> <label>XXXX<input type="text" class="fone" name="fone2" maxlength="50" value=""></label><br /> <label>XXX<input type="text" class="end" name="end2" maxlength="150" value=""></label> <label>XX<input type="text" size="10" name="nr2" maxlength="50" value=""></label> <label>XXXXXX<input type="text" class="bairro" name="bairro2" maxlength="50" value=""></label> </fieldset> <p> <fieldset> <label><input type="text" class="box" name="box3" maxlength="150" value=""></label> <label>XXXX<input type="text" class="nome" name="nome3" maxlength="150" value=""></label> <label>XXXXX<input type="text" size="1" name="idade3" maxlength="50" value=""></label> <label>XXXX<input type="text" class="fone" name="fone3" maxlength="50" value=""></label><br /> <label>XXX<input type="text" class="end" name="end3" maxlength="150" value=""></label> <label>XX<input type="text" size="10" name="nr3" maxlength="50" value=""></label> <label>XXXXXX<input type="text" class="bairro" name="bairro3" maxlength="50" value=""></label> </fieldset> <fieldset> <legend align="center">XXXXXXXXXXXX</legend> <label>XXX<input type="text" class="destinatario" name="destinatario" value=""></label> </fieldset> <fieldset> <legend align="center">XXXXXXXXXXXXXXXXXXXXXXXXXXX</legend> <div id="historico"><!--------COMEÇA AQUI--------------> <HEAD> <script LANGUAGE="JavaScript"> <!-- function textCounter(field, countfield, maxlimit) { if (field.value.length > maxlimit) field.value = field.value.substring(0, maxlimit); else countfield.value = maxlimit - field.value.length; } // --> </script> <center> <textarea name=historico wrap=physical cols=58 rows=20 onKeyDown="textCounter(this.form.historico,this.form.remLen,2500);" onKeyUp="textCounter(this.form.historico,this.form.remLen,2500);"></textarea> Faltam <input readonly type=text name=remLen size=3 maxlength=3 value="2500"> caracteres</font> </form> </center> <!--------TERMINA AQUI-------------></div></fieldset><p /> <center>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</center> <fieldset class="relator"> <legend align="center">XXXXXXXXXXX</legend> <label><input type="text" name="relator" class="relator" value=""></label> </fieldset> <fieldset class="pa"> <legend align="center">XXXXXXXXXXX</legend> <label><input type="text" name="pa" class="pa" value=""></label> </fieldset> <fieldset class="nr"> <legend align="center">XX</legend> <label><input type="text" name="numero" class="nr" value=""></label> </fieldset> <fieldset class="fra"> <legend align="center">XXXXXXXXXXXX</legend> <label><input type="text" name="fra" class="fra" value=""></label> </fieldset> <fieldset class="rubrica"> <legend align="center">XXXXXXX</legend> <label><input type="text" name="rubrica" class="rubrica"></label> </fieldset> <center>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</center> <fieldset class="aut"> <legend align="center">XXXXXXXX</legend> <label><input type="text" name="aut" class="aut" value=""></label> </fieldset> <fieldset class="pa2"> <legend align="center">XXXXXXXXXXX</legend> <label><input type="text" name="pa2" class="pa2" value=""></label> </fieldset> <fieldset class="cargo"> <legend align="center">XXXXXXXXXXXXXXXX</legend> <label><input type="text" name="cargo" class="nr" value=""></label> </fieldset> <fieldset class="rubrica"> <legend align="center">XXXXXXXXX</legend> <label><input type="text" name="rubrica" class="rubrica"></label> </fieldset> <p /> </form> </table> </body> </html> <?php //ob_end_clean(); // Finaliza o fluxo $html = ob_get_clean(); define('_MPDF_PATH', './mpdf51/'); include(_MPDF_PATH.'mpdf.php'); // cria um novo container PDF no formato A4 com orientação customizada $mpdf=new mPDF('pt','A4',3,'',8,8,5,14,9,9,'L'); // muda o charset para aceitar caracteres acentuados iso 8859-1 utilizados por mim no banco de dados e na geracao do conteudo PHP com HTML $mpdf->allow_charset_conversion=true; $mpdf->charset_in='iso-8859-1'; //Algumas configurações do PDF $mpdf->SetDisplayMode('fullpage'); // modo de visualização $mpdf->SetFooter('{DATE j/m/Y H:i}|{PAGENO}/{nb}|XXXXX'); //bacana este rodape, não é mesmo? // carrega uma folha de estilo - MAGICA!!! $stylesheet = file_get_contents('./css/comunica.css'); // incorpora a folha de estilo ao PDF // O parâmetro 1 diz que este é um css/style e deverá ser interpretado como tal $mpdf->WriteHTML($stylesheet,1); // incorpora o corpo ao PDF na posição 2 e deverá ser interpretado como footage. Todo footage é posicao 2 ou 0(padrão). $mpdf->WriteHTML($html,2); // define um nome para o arquivo PDF $arquivo = date("d-m-y-his").'_XXX_.pdf'; // gera o relatório $mpdf->Output($arquivo,'D'); exit(); ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
RRH
Montei um formulário com php e css e gostaria de saber se é possível gerar um pdf após preenchê-lo. Já tentei aqui mas não obtive sucesso.
Uploaded with ImageShack.us
Link para o comentário
Compartilhar em outros sites
15 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.