Hola amigo!
1. Bajate la clase de FPDF desde aqui:
http://www.fpdf.org/es/dl.php?v=16&f=zip
2. Lo descomprimes y le das el nombre de fpdf
3. Luego en la carpeta donde esta tu sistema o donde piensas utilizar la funcion guardas ese archivo (carpeta que acabas de descomprimir y tiene el nombre de fpdf).
Y ya lo tendras instalado para ser usado!
El fpdf tiene muchas ventajas y desventajas yo lo uso porque es facil y parendi con el, pero a medida que voy aprendiendo mas me doy cuenta que la comunidad o creadores del mismo no tienen suficiente informacion para realizar buenos reportes!
Practicamente esta muy abandonada la informacion del mismo.
Pero para generar reportes funciona bien (aunque repito ya es la 3ra vez que presento problemas y nadie nadieeee me a podido ayudar, y asi hay muchas personas mas!)
Para generar el reporte con los datos de tu Base de Datos es muy parecedio a com trabajas con tus sentencias en PHP, el SELECT tiene la misma seintaxis y todo!
Te dejare un ejemplo!
Código PHP:
<?php
require('fpdf.php');
class PDF extends FPDF
{
//Cabecera de página
function Header()
{
$this->Image('images/barra.jpg',50,10,180);
$this->SetFont('Arial','B',6);
$this->Cell(0,20,"Fecha de Impresion: ".date('d - m - Y')." ",'',1,'R');
$this->Ln(2);
}
//Pie de página
function Footer()
{
//Posición: a 2 cm del final
$this->SetY(-20);
//Arial italic 8
$this->SetFont('Arial','',8);
$this->Cell(300,4,'Firma:__________________________ Responsable:__________________________','',1,'C');
//Arial italic 8
$this->SetFont('Arial','BI',8);
$this->Cell(250,2,'GENERAL MOTORS VENEZOLANA C.A','',1,'L');
$this->Cell(250,5,'Sistema para la Gestion de CNP','',1,'L');
//Arial italic 8
$this->SetFont('Arial','BI',8);
//Número de página
$this->Cell(195,4,'Reporte de Materiales','T',0,'L');
$this->Cell(0,4,'Pagina '.$this->PageNo().'/TPAG','T',1,'R');
}
}//Fin de la clase
//Creación del objeto de la clase heredada
$pdf = new PDF('L','mm','LETTER');
$pdf->AliasNbPages('TPAG');
$pdf->SetTopMargin(20);
$pdf->SetLeftMargin(5);
$pdf->SetRightMargin(5);
$pdf->AddPage();
//Aqui te conectas a la base de datos, esta pagina no te la doy porque ya la debes tener si trabajas con php y mysql
include("../conexion.php");
$link=Conectarse();
//Aqui haces el llamado a la trabla de tu base de datos
$leer="SELECT * FROM materiales order by id ASC";
$basededatos=mysql_db_query("singes","$leer");
$pdf->SetFont('Arial','B',7);
$pdf->Cell(230,5,"REPORTE DE MATERIALES",'',1,'C');
$pdf->SetFont('Arial','B',6);
$pdf->Cell(25,6,'Numero de Partes','TRLB',0,'C');
$pdf->SetFont('Arial','B',6);
$pdf->Cell(35,6,'Nombre','TRLB',0,'C');
$pdf->SetFont('Arial','B',6);
$pdf->Cell(140,6,'Especificaciones','TRLB',0,'C');
$pdf->SetFont('Arial','B',6);
$pdf->Cell(25,6,'Unidad/Medida','TRLB',0,'C');
$pdf->SetFont('Arial','B',6);
$pdf->Cell(25,6,'Codigo Arancelario','TRLB',0,'C');
$pdf->SetFont('Arial','B',6);
$pdf->Cell(15,6,'Status','TRLB',1,'C');
while($fila=mysql_fetch_array($basededatos))
{
// Aqui empiezas a mostrar los datos
$pdf->SetFont('Arial','',6);
$pdf->Cell(25,5,$fila[numero],'TRLB',0,'Q');
$pdf->SetFont('Arial','',6);
$pdf->Cell(35,5,$fila[nombre],'TRLB',0,'Q');
$pdf->SetFont('Arial','',6);
$especificaciones=substr($fila[especificaciones],0,140);
$pdf->Cell(140,5,$especificaciones.'...','TRLB',0,'Q');
$pdf->SetFont('Arial','',6);
$pdf->Cell(25,5,$fila[unidad],'TRLB',0,'Q');
$pdf->SetFont('Arial','',6);
$pdf->Cell(25,5,$fila[codigo_arancelario],'TRLB',0,'Q');
$pdf->SetFont('Arial','',6);
if($fila[statu]=='1')
{
$statu='Activo';
}
else
{
$statu='Inactivo';
}
$pdf->Cell(15,5,$statu,'TRLB',1,'Q');
}
$pdf->Ln(8);
$pdf->OutPut("Reporte de Materiales.pdf",'D');
?>
Lo guardas con el nombre que quieras; ejemplo: reporte.php
Ahora solo le hacer link (enlace) desde tu sistema y ya!
Ejemplo:
Puede hacer un enlace en tu menu de tu pagina o sistema:
fpdf/eporte.php
Recuerda que los reportes los colocaras en la carpeta fpdf por ñlo que al hacer el llamado solo debes agreagar el fpdf/ en los enlaces
Y al hacer clic sobre el lo descargara y ya!
Espero te sirva de ayuda!
Te estoy dando un ejemplo funcional y real de un reporte, ya que es una de mis sistemas (es decir no tiene errores porque lo uso actualmente)