Tema: Usando fpdf
Ver Mensaje Individual
  #8 (permalink)  
Antiguo 23/03/2010, 10:17
Avatar de venom_mau
venom_mau
 
Fecha de Ingreso: julio-2009
Mensajes: 152
Antigüedad: 14 años, 9 meses
Puntos: 2
Respuesta: Usando fpdf

Bueno quiero compartir la solución que logré.

Primero en un sólo script genero los pdf, la página se presenta primero con un select, el cual contiene nombres de personas, seleccionas una opción, das click en el botón generar dpf y manda en otra pestaña o ventana según el navegador, algunos datos de la persona que elegiste.

El script:

Código:
<?php
	session_start();
	$id = @mysql_connect("localhost", "user", "pass"); 
	$conex = @mysql_select_db("mydb", $id); 

	if(isset($_POST["R_Per"])){

 	//print_r($_POST);
   	if(isset($_POST["R_Per"])){
     $rep=1;
     $RP=$_POST['rep_persona'];}


	
	$busqueda=@mysql_query("select concat(nombre,' ',ap_pat,' ',ap_mat) as nombre from cat_personas where idrfc='$RP'");
	$resultado=@mysql_fetch_array($busqueda);


	$busqueda2=@mysql_query("select domicilio from datos where idrfc='$RP'");
	$resultado2=@mysql_fetch_array($busqueda2);


	require('fpdf.php');
        class PDF extends FPDF
	{
		//Cabecera de página
		function Header()
			{
 				//Logo
    				$this->Image('imagen1.jpg',20,15,25);
    				//Logo
    				$this->Image('imagen2.jpg',160,15,18);
   				//Arial bold 15
    				$this->SetFont('Arial','B',12);
    				//Movernos a la derecha
    				$this->Cell(80);
    				//Título
    				$this->Cell(20,25,'empresa patito',2,0,'C');
    				//Salto de línea
    				$this->Ln(10);
    				$this->Cell(80);     
    				$this->Cell(20,25,'Datos Personales',2,0,'C');
    				$this->Ln(20);
			}

		//Pie de página
		function Footer()
			{
    				//Posición: a 1,5 cm del final
    				$this->SetY(-15);
    				//Arial italic 8
    				$this->SetFont('Arial','I',8);
    				//Número de página
    				$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
			}
	}
	$pdf=new PDF();
	$pdf->AliasNbPages();
	$pdf->AddPage();

	$pdf->Ln(5);

	$pdf->SetFont('Arial','B',9);
	$pdf->Cell(70,15,'Reporte por Persona');
	$pdf->Ln();

	$pdf->SetFont('Arial','B',8);
	$pdf->Cell(80,5,'Nombre:  '.$resultado[nombre].'.',0,1,'C');
	$pdf->Cell(80,5,'Dirección:  '.$resultado2[0].'.',0,1,'C');

	@mysql_free_result($resultado);
        @mysql_free_result($resultado2);
	@mysql_close($conex);
	$pdf->Output();

}
else{

?>
<?
	session_start();
	$id = @mysql_connect("localhost", "user", "pass"); 
	$conex = @mysql_select_db("mydb", $id); 

	$var=$_SESSION['idusuario'];

?>
<html>
......

<?


	echo "<select name='rep_persona' id='inputs2' height=50>";
								

$pers=mysql_query("select concat(nombre,' ',ap_pat,' ',ap_mat) as nombre, idrfc from cat_personas");

while($row=mysql_fetch_array($pers)) 
	{
	echo "<option value='". $row['idrfc']." '>".$row['nombre']."</option>";
	}

	echo "</select>";


	?>
								

<br><input type="submit" name="R_Per" value="Reporte por Persona" />
...
<?
}
?>
</html>
Espero se halla entendido, y lo puedan aplicar en algún problema que tengan.

El detalle que me pasó, es que me enviaba la variable rfc pero no lograba usarla para hacer el query en la parte de desarrollo del pdf, esto lo solucioné con la línea:
Código:
echo "<option value='". $row['idrfc']." '>".$row['nombre']."</option>";
La cual antes tenía así:
Código:
echo "<option value=' $row[idrfc] '>$row[nombre]</option>";
Errores de principiante, que espero evitar en futuros scripts :P

Saludos :)

Última edición por venom_mau; 23/03/2010 a las 10:18 Razón: faltó código