Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/11/2007, 07:15
rynkydynky
 
Fecha de Ingreso: diciembre-2006
Ubicación: Tunja
Mensajes: 177
Antigüedad: 17 años, 4 meses
Puntos: 2
Hay Alguna Forma de Hacer este reporte?

Saludos amigos del foro, tengo esta gran duda y lo he intentado, pero no he podido:

Tengo que realizar un reporte de unas encuestas de las cuales hay preguntas y respuestas. Las preguntas las almaceno en una tabla de una bd mysql y los niveles de califiación en otra y ambas recaen en una tabla resultados. Entonces por ejemplo estoy haciendo la consulta de cuantas personas califican con nivel calificación 5 en la pregunta 1, cuantas con 4 en la preg 1... cuantas con 5 en la pregunta 2 etc.

Asi:


el problema es que no puedo hacer que los resultados se muestren al frente de las preguntas y se repitan con la cantidad de preguntas que hay. Veo casi imposible hacerlo ya que las consultas casi siempre van hacia abajo (Vertical) y no al frente (Horizontal). Entonces quiero que las preguntas se muestre dinamicamente en el eje vertical y los resultados por nivel de calificación en el eje horizontal. Hay alguna salida?. Aquí está la consulta y el código de como lo intentó hacer:

Código PHP:
//Consulta Resultados
mysql_select_db($database_cnx_supervisor, $cnx_supervisor);
$query_Resul_evaluac = "SELECT    `tbl_item`.Item_evaluacion,   `tbl_nivel_calificacion`.Nivel_calificac,   COUNT(`tbl_resultado_evaluacion`.`Cod_nivel_calificac`) AS Cant_resultados FROM   `tbl_resultado_evaluacion`   INNER JOIN `tbl_item` ON (`tbl_resultado_evaluacion`.Cod_item_evaluac = `tbl_item`.Cod_item_evaluac)   LEFT OUTER JOIN `tbl_nivel_calificacion` ON (`tbl_resultado_evaluacion`.Cod_nivel_calificac = `tbl_nivel_calificacion`.Cod_nivel_calificac) WHERE tbl_resultado_evaluacion.`Cod_detalle_evaluac` = 2     GROUP BY   `tbl_item`.Item_evaluacion,       `tbl_nivel_calificacion`.Nivel_calificac   ORDER BY `tbl_item`.Item_evaluacion,       `tbl_nivel_calificacion`.Nivel_calificac";
$Resul_evaluac = mysql_query($query_Resul_evaluac, $cnx_supervisor) or die(mysql_error());
$row_Resul_evaluac = mysql_fetch_assoc($Resul_evaluac);
$totalRows_Resul_evaluac = mysql_num_rows($Resul_evaluac);

//Consulta nivel calificación
mysql_select_db($database_cnx_supervisor, $cnx_supervisor);
$query_Nivel_Califi = "SELECT Cod_nivel_calificac, Nivel_calificac FROM tbl_nivel_calificacion ORDER BY Cod_nivel_calificac DESC";
$Nivel_Califi = mysql_query($query_Nivel_Califi, $cnx_supervisor) or die(mysql_error());
$row_Nivel_Califi = mysql_fetch_assoc($Nivel_Califi);
$totalRows_Nivel_Califi = mysql_num_rows($Nivel_Califi);

//Tabla reporte resultados

<table border="1" cellpadding="1" cellspacing="1">
  <tr>
    <td>Item_evaluacion</td>
  <?php do { ?>    
    <td><?php echo $row_Nivel_Califi['Nivel_calificac']; ?></td>
   <?php } while ($row_Nivel_Califi mysql_fetch_assoc($Nivel_Califi)); ?>
  </tr>
  <?php do { ?>
    <tr>
      <td><?php echo $row_Resul_evaluac['Item_evaluacion']; ?></td>
      <td><?php echo $row_Resul_evaluac['Cant_resultados']; ?></td>
    </tr>
    <?php } while ($row_Resul_evaluac mysql_fetch_assoc($Resul_evaluac)); ?>
</table>
De antemano gracias.