Ver Mensaje Individual
  #4 (permalink)  
Antiguo 01/04/2011, 01:20
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Como Hago Una Consulta SQL Dinamica ?

Código PHP:
Ver original
  1. function sp_cal_pas($ato=0, $nego=0,$opera=0,$mes_=0){
  2.  
  3. $sql="SELECT CorrigePostaXTPO.LAm, ".  
  4.               "CorrigePostaXTPO.ORIm,CorrigePostaXTPO.Negocio,".
  5.               "MONTH(FTRAMO) as Mes, SUM(F+J+Y) as pasajeros_total ".
  6.           "FROM PaxEmbarcados LEFT JOIN CorrigePostaXTPO ".
  7.                "ON (PaxEmbarcados.NRO = CorrigePostaXTPO.NRO) ".
  8.                     "AND (PaxEmbarcados.LA = CorrigePostaXTPO.LA) ".
  9.                     "AND (PaxEmbarcados.DES = CorrigePostaXTPO.DES) ".
  10.                     "AND (PaxEmbarcados.ORI = CorrigePostaXTPO.ORI)";
  11.  
  12. $filtro = "WHERE MONTH(FTRAMO)=".$mes_;
  13.  
  14. if($opera!=0) $filtro.=" and CorrigePostaXTPO.LAm=".$opera;
  15.  
  16. if($nego!=0)  $filtro.=" and CorrigePostaXTPO.Negocio=".$nego;
  17.  
  18. if($ato!=0) $filtro.=" AND CorrigePostaXTPO.ORIm=".$nego;
  19.  
  20. $sql.=$filtro."GROUP BY ".
  21.               "CorrigePostaXTPO.ORIm,CorrigePostaXTPO.Negocio,MONTH(FTRAMO);";
  22.  
  23. $result = mysql_query ($sql);
  24.  
  25. echo "<table width='100%' border='0' cellspacing='0' cellpadding='0'>".
  26.              "<tr>".
  27.                  "<td>LAm</td>".
  28.                  "<td>ORIm</td>".
  29.                  "<td>Negocio</td>".
  30.                  "<td>Mes</td>".
  31.                  "<td>pasajeros_total</td>".
  32.               "</tr>";
  33. while ($row = mysql_fetch_assoc($result)) {
  34.  
  35.      echo "<tr>".
  36.                  "<td>".$row['LAm']."</td>".
  37.                  "<td>".$row['ORIm']."</td>".
  38.                  "<td>".$row['Negocio']."</td>".
  39.                  "<td>".$row['Mes']."</td>".
  40.                  "<td>".$row['pasajeros_total']."</td>".
  41.               "</tr>";
  42.  
  43. }
  44.  
  45. echo "</table>";
  46.  
  47. }


Esto seria una función php equivalente a tu procedure que ademas imprime una tabla html con los datos.

Para lo que quieres hacer, obtener unos datos y seguramente mostrarlos en una web es mas apropiado algo asi que un PROCEDURE que yo reservaria para trabajos mas internos de la bbdd.

Funcinara siempre que tengas una conexion a la bbdd activa, date una vuelta por el manual de php
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 01/04/2011 a las 01:26