Ver Mensaje Individual
  #7 (permalink)  
Antiguo 22/04/2014, 03:12
Avatar de temerariomalaga
temerariomalaga
 
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años, 10 meses
Puntos: 9
Respuesta: Crear paginas PDF segun consulta SQL

Código PHP:
Ver original
  1. include"fpdf.php";
  2.     include"conexion.php";
  3.     class PDF extends FPDF{
  4.         function Header(){
  5.             global $sede, $localidad, $apellidos, $nombre;
  6.             $this->Image('images/logo.jpg', 10, 5, 20);
  7.             $this->SetFont('Arial', 'B', 15);
  8.             $this->Cell(180);
  9.             $this->Cell(20, 0, utf8_decode('Designaciones Árbitro'), 'C');
  10.             $this->Ln(10);
  11.             $this->Cell(180);
  12.             $this->SetFont('Arial', '', 12);
  13.             if($sede==0){
  14.                 $this->Cell(20, 0, utf8_decode("Nombre: ".$apellidos.', '.$nombre), 'C');
  15.             }
  16.             else{
  17.                 $this->Cell(20, 0, utf8_decode('Nombre: ('.$sede."".$localidad.") ".$apellidos.', '.$nombre), 'C');
  18.             }
  19.             $this->Ln(15);
  20.             $this->SetFont('Arial', 'B', 22);
  21.             $this->Cell(0,0,'',1);
  22.             $this->Ln(1);
  23.         }
  24.         function Footer(){
  25.             $this->SetY(-15);
  26.             $this->SetFont('Arial','I',8);
  27.             $this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
  28.         }
  29.     }
  30.     $pdf=new PDF('L','mm','A4');
  31.     $pdf->AliasNbPages();
  32.     $sql=new mysqli($servidor, $usuario, $clave, $basedatos);
  33.     $sql->set_charset("latin1");
  34.     if($sql->connect_error){
  35.         echo "Error nº ".$sql->connect_errno.": ".$sql->connect_error;
  36.     }
  37.     $r=$sql->query("SELECT COUNT(*) Total, Apellidos, Licencia FROM EQUIPO_ARBITRAL");
  38.     while($row11=$r->fetch_array()){
  39.         $apellido=$row11["Apellidos"];
  40.         $licencia=$row11["Licencia"];
  41.         $res=$sql->query("SELECT Apellidos, EQUIPO_ARBITRAL.Nombre ArbNom, LOCALIDAD.Nombre LocNom, SEDE.Codigo_sede FROM EQUIPO_ARBITRAL
  42.             INNER JOIN LOCALIDAD ON EQUIPO_ARBITRAL.Cod_localidad=LOCALIDAD.Codigo_localidad INNER JOIN SEDE ON LOCALIDAD.Codigo_sede=SEDE.Codigo_sede
  43.             WHERE Apellidos LIKE '%$apellido%' AND Licencia='$licencia'");
  44.         while($row=$res->fetch_array()){
  45.             $sede=$row["Codigo_sede"];
  46.             $localidad=$row["LocNom"];
  47.             $apellidos=$row["Apellidos"];
  48.             $nombre=$row["ArbNom"];
  49.         }
  50.         switch($localidad){
  51.             case 'Alhaurín de la Torre':
  52.                 $localidad='ALT';
  53.             break;
  54.             case 'Alhaurín el Grande':
  55.                 $localidad='ALG';
  56.             break;
  57.         }
  58.         $localidad=substr($localidad, 0, 4);
  59.         $pdf->AddPage();
  60.         $mysqli=new mysqli($servidor, $usuario, $clave, $basedatos);
  61.         $mysqli->set_charset("latin1");
  62.         if($mysqli->connect_error){
  63.             echo "Error nº ".$mysqli->connect_errno.": ".$mysqli->connect_error;
  64.         }
  65.         $result=$mysqli->query("SELECT E1.Nombre EquipoA, E2.Nombre EquipoB, DATE_FORMAT(Fecha, '%d/%m/%Y') AS 'Fecha', TIME_FORMAT(Hora, '%H:%i') AS 'Hora', Abreviatura, Tipo, LOCALIDAD.Nombre Localidad, PA.Nombre Pista, PA.Codigo_pabellon,
  66.         CONCAT(A1.Licencia, ' ', A1.Apellidos,', ', A1.Nombre) ArbPrin, CONCAT(A2.Licencia, ' ', A2.Apellidos,', ', A2.Nombre) ArbAux, CONCAT(A3.Licencia, ' ', A3.Apellidos,', ', A3.Nombre) Anotador, CONCAT(A4.Licencia, ' ', A4.Apellidos,', ', A4.Nombre) Crono, CONCAT(A5.Licencia, ' ', A5.Apellidos,', ', A5.Nombre) Op24, CONCAT(A6.Licencia, ' ', A6.Apellidos,', ', A6.Nombre) Coche
  67.         FROM PARTIDO P INNER JOIN EQUIPO E1 ON P.EquipoA=E1.Codigo_equipo
  68.         INNER JOIN EQUIPO E2 ON P.EquipoB=E2.Codigo_equipo
  69.         INNER JOIN PABELLON PA ON P.Codigo_pabellon=PA.Codigo_pabellon
  70.         INNER JOIN CATEGORIA ON P.Codigo_categoria=CATEGORIA.Codigo_categoria
  71.         INNER JOIN LOCALIDAD ON  PA.Codigo_localidad=LOCALIDAD.Codigo_localidad
  72.         INNER JOIN SEDE ON LOCALIDAD.Codigo_sede=SEDE.Codigo_sede
  73.         LEFT JOIN EQUIPO_ARBITRAL A1 ON A1.Codigo_arbitro=P.ArbPrin
  74.         LEFT JOIN EQUIPO_ARBITRAL A2 ON A2.Codigo_arbitro=P.ArbAux
  75.         LEFT JOIN EQUIPO_ARBITRAL A3 ON A3.Codigo_arbitro=P.Anotador
  76.         LEFT JOIN EQUIPO_ARBITRAL A4 ON A4.Codigo_arbitro=P.Crono
  77.         LEFT JOIN EQUIPO_ARBITRAL A5 ON A5.Codigo_arbitro=P.Op24
  78.         LEFT JOIN EQUIPO_ARBITRAL A6 ON A6.Codigo_arbitro=P.Coche
  79.         WHERE A1.Apellidos LIKE '%$apellidos%' OR A2.Apellidos LIKE '%$apellidos%'
  80.         OR A3.Apellidos LIKE '%$apellidos%' OR A4.Apellidos LIKE '%$apellidos%' OR
  81.         A5.Apellidos LIKE '%$apellidos%' OR A6.Apellidos LIKE '%$apellidos%'
  82.         ORDER BY Fecha, Hora");
  83.         $pdf->SetFont('Arial', 'B', 12);
  84.         $pdf->Cell(165);
  85.         $pdf->Cell(60,10, 'Principal');
  86.         $pdf->Cell(60,10, 'Anotador');
  87.         $pdf->Ln(5);
  88.         $pdf->Cell(165);
  89.         $pdf->Cell(60,10, 'Auxiliar');
  90.         $pdf->Cell(60,10, 'Cronometrador');
  91.         $pdf->Ln(5);
  92.         $pdf->Cell(10);
  93.         $pdf->Cell(10,10,'Encuentro');
  94.         $pdf->Cell(40);
  95.         $pdf->Cell(25,10, 'Fecha');
  96.         $pdf->Cell(15,10, 'Hora');
  97.         $pdf->Cell(30,10, 'Categoria');
  98.         $pdf->Cell(25,10, 'Compet.');
  99.         $pdf->Cell(10);
  100.         $pdf->Cell(60,10, 'Coche');
  101.         $pdf->Cell(60,10, 'Operador 24"');
  102.         $pdf->Ln(10);
  103.         $pdf->Cell(0,0,'',1);
  104.         $pdf->Ln(1);
  105.         $pdf->Cell(0,0,'',1);
  106.         $pdf->Ln(1);
  107.         $pdf->SetFont('Arial', '', 10);
  108.         while($row=$result->fetch_array()){
  109.             $pdf->Cell(60,10,utf8_decode(substr($row["EquipoA"], 0, 40)));
  110.             $pdf->Cell(25,10,$row["Fecha"]);
  111.             $pdf->Cell(15,10,$row["Hora"]);
  112.             $pdf->Cell(30,10,$row["Abreviatura"]);
  113.             $pdf->Cell(25,10,$row["Tipo"]);
  114.             $pdf->Cell(60,10,utf8_decode($row["ArbPrin"]));
  115.             $pdf->Cell(60,10,utf8_decode($row["Anotador"]));
  116.             $pdf->Ln(5);
  117.             $pdf->Cell(60,10,utf8_decode(substr($row["EquipoB"], 0, 40)));
  118.             $pdf->Cell(95);
  119.             $pdf->Cell(60,10,utf8_decode($row["ArbAux"]));
  120.             $pdf->Cell(60,10,utf8_decode($row["Crono"]));
  121.             $pdf->Ln(5);
  122.             $pdf->SetFont('Arial', 'B', 10);
  123.             $pdf->Cell(20,10,'Localidad: ');
  124.             $pdf->SetFont('Arial', '', 10);
  125.             $pdf->Cell(30,10,utf8_decode($row["Localidad"]));
  126.             $pdf->Cell(25);
  127.             $pdf->SetFont('Arial', 'B', 10);
  128.             $pdf->Cell(12,10,'Pista: ');
  129.             $pdf->SetFont('Arial', '', 10);
  130.             $pdf->Cell(30,10,utf8_decode($row["Pista"]));
  131.             $pdf->Cell(38);
  132.             $pdf->Cell(60,10,utf8_decode($row["Coche"]));
  133.             $pdf->Cell(60,10,utf8_decode($row["Op24"]));
  134.             $pdf->Ln(8);
  135.             $pdf->Cell(0,0,'',1);
  136.             $pdf->Ln(3);
  137.         }
  138.     }
  139.     mysqli_close($mysqli);
  140.     mysqli_close($sql);
  141.     $pdf->Output();
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe