Ir ao conteúdo
  • Cadastre-se
DPB

Gerar pdf através de um formulário html

Recommended Posts

Olá pessoal estou com uma dúvida. Eu quero fazer um formulário em HTML e através dele gerar um arquivo PDF e já baixei uma biblioteca chamada mPDF 6.0 eu até pesquisei mas não consegui entender como fazer isso. Por exemplo tenho um formulário com os campos (nome, endereço, cidade) e ter um botão que gere um PDF. Como posso fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

@DPB Com HTML apenas não.

Use o php e uma classe chamada "fpdf"  aí sim você pode gerar o pdf a partir de um formulário!

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu vi alguns exemplos onde eles tem 3 arquivos (index.html / modelo.html (que servir como modelo de seu PDF) / gerar_pdf.php) e eles usam a classe mPDF so que não estou conseguindo fazer você não teria um exemplo de como fazer com o fpdf.

Compartilhar este post


Link para o post
Compartilhar em outros sites

@DPB Tem o próprio site deles...  http://www.fpdf.org/

 

Lá tem um link " Tutorial"  que contém vários exemplos. de como usar a classe... No google também existem muitos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

@dif Ola bom dia consegui um modelo bem legal. Eu gostaria de saber se tem como deixar um modelo "tipo" HTML pronto para receber o arquivo pdf já formatado por exemplo com (cor da fonte, tamanho da fonte, receber os dados de uma tabela e fazer um upload de uma foto e colocar dentro do documento em um lugar especifico). Abaixo o código de exemplo em anexo.

 

Página index.php

<form method="post" action="gerarpdf.php">
   <label for="nome">Nome:</label><br>
   <input type="text" id="nome" name="nome"><br>
   <label for="horas">Horas:</label><br>
   <input type="text" id="horas" name="horas"><br>
   <label for="data">Data por extenso:</label><br>
   <input type="text" id="data" name="data"><br>
   <br>
   <input type="sumbit" value="Gerar PDF"><br>
</form>

 

Página gerarpdf.php

 

<?php 
   require_once( 'fpdf/fpdf.php' );
   
   
   $nome  = @$_POST['nome']; // Sim, a supressão é perfeitamente válida neste contexto
   $horas = @$_POST['horas']; // pois os parâmetros serão checados logo em seguida.
   $data  = @$_POST['data'];
   // Aqui você processa os parâmetros desejados, isto é só um exemplo.
   // Utilizei as variáveis do <form>, mas aqui você pode pegar o que
   // precisar de algum DB, ou mesmo misturar as técnicas.
   if( empty( $nome  ) ) $nome = "Anônimo da Silva";
   if( empty( $horas ) ) $horas = 24;
   if( empty( $data  ) ) $data = "17 de agosto de 2014";

   // e finalmente, geramos o PDF:
   $pdf = new FPDF();

   $pdf->AddPage();
   $pdf->SetFont('Arial','B', 14);
   $pdf->SetXY( 10, 20 );
   $pdf->Cell( 190, 0, 'DECLARAÇÃO', 0, 0, 'C');

   $pdf->SetFont('Arial','', 12);
   $pdf->SetXY( 10, 30 );
   $pdf->MultiCell( 190, 6,
      "  Eu, $nome, declaro que adquiri de Alaor Ivan Souza ".
      "um pacote de créditos para acesso à internet com duração ".
      "de $horas horas, iniciando-se em $data.\n".
      "  Declaro ainda que estas informações provavelmente são ".
      "inverídicas e sem sentido, pois isto aqui é um mero teste."
   );
   $pdf->Output();
?>

O exemplo acima esta funcionando perfeitamente, só gostaria de ter um pagina modelo para receber o formulário, ou seja, uma página já formatada. Obrigado.

Editado por DPB

Compartilhar este post


Link para o post
Compartilhar em outros sites

@DPB Você pode pegar os dados dos banco de dados normalmente como php, fazer a mesma estrutura com o while e os métodos/funções do fdpf 

Sobre o layout, tem uma extensão dele que permite isso: http://www.fpdf.org/en/script/script42.php

 

Contudo, aquele outro que você já usou, o mpdf, também é bom e tem suporte ao CSS.. só que pelo que li ele é bem rígido, onde tags mal declaradas ele não interpreta. 

Ainda assim eu prefiro o fpdf! Lembro-me que na faculdade eu fiz um exercício que tinha que apresentar um relatório de vendas de um e-commerce em pdf com gráficos forma de pizza vindo do banco! Só dava trabalho ter que montar todo o layout no pdf. Naquela época não existia o tal script extensor como esse que passei mais acima! :thumbsup:

Compartilhar este post


Link para o post
Compartilhar em outros sites

@difOla bom dia.

 

Ainda estou apanhando para colocar o CSS no pdf, mas vou seguir tentando. Vi em alguns formulário o seguinte tem por exemplo os campos (nome, email) ai embaixo desses campos tem um botão de "+" ou alguma coisa parecida para adicionar mais campos como por exemplo (adicionei um "nome, email" so que tenho que acrescentar mais nomes nesse formulário então criaria esse botão de "+" vi em alguns fóruns que eles utilizam javascript para criar eventos para esse botão so que além de eles repetirem somente o campo e criar um campo novo eles "duplicam o campo junto com os dados adicionados". Eu gostaria de fazer esse evento sem ter que repetir os dados e sim somente os campos de preenchimento.

Editado por DPB

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×