Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

miromalc

FPDF com PHP+Mysql com 5 colunas

Recommended Posts

Seguindo o tutorial:do Júlio César Martini - Gerando um PDF através de uma consulta ao MySQL

Dúvidas:

1 - Como posso implementar o arquivo para ser impresso na tela do usuário em vez de salvar diretamente.?

2 - Como modificar o código para que a tabela do arquivo .pdf com 5 colunas fique na mesma linha? O tutorial tem 3 colunas e quando tento colucar mais colunas da minha tabela elas vem na linha de baixo.

Agradeço imensamente agradecido pela ajuda.

 

<?
//CONFIGURAÇÕES DO BD MYSQL
$servidor = "localhost";
$usuario = "root";
$senha = "";
$bd = "produtos";
//TÍTULO DO RELATÓRIO
$titulo = "Colunistas do iMasters";
//LOGO QUE SERÁ COLOCADO NO RELATÓRIO
$imagem = "logo_imasters.jpg";
//ENDEREÇO DA BIBLIOTECA FPDF
$end_fpdf = "fpdf";
//NUMERO DE RESULTADOS POR PÁGINA
$por_pagina = 30;
//ENDEREÇO ONDE SERÁ GERADO O PDF
$end_final = "artigo_php.pdf";
//TIPO DO PDF GERADO
//F-> SALVA NO ENDEREÇO ESPECIFICADO NA VAR END_FINAL
$tipo_pdf = "F";
//CONECTA COM O MYSQL
$conn = mysql_connect($servidor, $usuario, $senha);
$db = mysql_select_db($bd, $conn);
$sql = mysql_query("SELECT A.Código, A.Descrição, A.Fabricante, A.Imagem A.Un de Venda FROM tblprodutos A", $conn);
$row = mysql_num_rows($sql);

//VERIFICA SE RETORNOU ALGUMA LINHA
if(!$row) { echo "Não retornou nenhum registro"; die; }

//CALCULA QUANTAS PÁGINAS VÃO SER NECESSÁRIAS
$paginas = ceil($row/$por_pagina);

//PREPARA PARA GERAR O PDF
define("FPDF_FONTPATH", "$end_fpdf/font/");
//require("$end_fpdf/fpdf.php");
require_once("$end_fpdf/fpdf.php");
$pdf = new FPDF();

//INICIALIZA AS VARIÁVEIS
$linha_atual = 0;
$inicio = 0;

//PÁGINAS
for($x=1; $x<=$paginas; $x++) {

//VERIFICA
$inicio = $linha_atual;
$fim = $linha_atual + $por_pagina;
if($fim > $row) $fim = $row;

$pdf->Open();
$pdf->AddPage(); // adiciona pagina
$pdf->SetFont("Arial", "B", 8); //Fonte Arial negrito tamanho 8
$pdf->Image($imagem, 0, 8); //Margem esquerda e superior
$pdf->Ln(20);
$pdf->Cell(185, 8, "Página $x de $paginas", 0, 0, 'R'); //Inclui caixa no campo de numero de paginas

//QUEBRA DE LINHA
$pdf->Ln(15);

//MONTA O CABEÇALHO
$pdf->Cell(20, 5, "Código", 1, 0, 'C');
$pdf->Cell(85, 5, "Descrição", 1, 0, 'L');
$pdf->Cell(20, 5, "Fabricante", 1, 1, 'L');
[b]$pdf->Cell(20, 5, "Un de Venda", 1, 1, 'L');
$pdf->Cell(20, 5, "Imagem", 1, 1, 'L');[/b]

//EXIBE OS REGISTROS
for($i=$inicio; $i<$fim; $i++) {
$pdf->Cell(20, 5, mysql_result($sql, $i, "Código"), 1, 0, 'C');
$pdf->Cell(85, 5, mysql_result($sql, $i, "Descrição"), 1, 0, 'L');
$pdf->Cell(20, 5, mysql_result($sql, $i, "Fabricante"), 1, 1, 'L');
[b]$pdf->Cell(20, 5, mysql_result($sql, $i, "Un de Venda"), 1, 1, 'L');
$pdf->Cell(20, 5, mysql_result($sql, $i, "Imagem"), 1, 1, 'L')[/b];

$linha_atual++;
}//FECHA FOR(REGISTROS - i)
}//FECHA FOR(PAGINAS - x)

//SAIDA DO PDF
$pdf->Output("$end_final", "$tipo_pdf");
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resultado da busca no BD, a coluna imagem vem na linha de baixo sendo que deveria aparecer à direita da coluna fabricante na mesma linha.

Se alguem puder me dar uma mão fico agradecido.

Imagem Postada

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.