El problema es que necesito representar los resultados de dos arreglos, esté me lo hace pero hay un detalle, cuando el valor del mismo tiene valor cero, no me lo representa, y justo cuando haya un valor distinto de cero me lo "pega" cuando no debería.
Si no se me ha entendido bien, le va la descrición gráfica:
1.- tengo un rango de fechas : fecha inicio 2/08/2011 y fecha final 25/11/2011
2.- Desde el 2/08/2011 al 7/09/2011 tengo asignados valores distintos de cero.
3.- Desde el 8/09/2011 al 10/10/2011 tengo valores igual a cero (que se tienen que representar)
4.- Desde el 11/10/2011 al 25/11/2011 hay valores distintos de cero.
Lo que me hace en esto momentos, es obviarme el rango donde el valor es distinto de cero, y lo que hace es empatar la fecha del 7/09/2011 con la del 08/09/2011, cosa que no debería.
Hice el esfuerzo de darle miles de vueltas al asunto... pero no logro solventarlo. el código es el siguiente:
Código PHP:
<?php
/**
* Obtención de las Horas/Hombre para los Proyectos y Actividades , además
* de definir los elementos a evaluar dichas horas (Proyecto y Actividad)
*/
$calculo = calcularHoras($tipo_grafico, $dis_select, $ofic_select, $fechaInicio, $fechaFinal, $rango);
$calculoP = $calculo[0];
$calculoA = $calculo[1];
/**
* $encabezado
* Generación del los meses y el año correspondiente, de todos
* los elementos contenidos dentro del rango de fechas para
* visualizarlo en el gráfico
*/
$encabezado= obtenerEncabezadosGrafico($fechaInicio, $fechaFinal);
/*
* Recorrido para la visualización de los elementos contenidos
* dentro del rango de fechas para visualizarlo en el gráfico
*/
for ($i = 1; $i <= count($encabezado); $i++){
/**
* $auxM
* Variable que contendrá el Mes
*/
$auxM = $encabezado[$i][0];
/**
* $anio
* Variable que contendrá el Año
*/
$anio = $encabezado[$i][1];
/**
* $auxHP
* Horas/Hombre de Proyectos
* Si en el recorrido del arreglo de proyectos posee valor,
* se asigna las horas a dichos proyectos. Sino posee valor,
* se le asigna valor "cero" a las horas correspondiente al mismo
*/
if (isset($calculoP[$i]) && isset($calculoP[$i]["Horas"]))
$auxHP= $calculoP[$i]["Horas"];
else
$auxHP = 0;
/**
* $auxHA
* Horas/Hombre de Actividades
* Si en el recorrido del arreglo de actividades posee valor,
* se asigna las horas a dichas actividades. Sino posee valor,
* se le asigna valor "cero" a las horas correspondiente al mismo
*/
if (isset($calculoA[$i]) && isset($calculoA[$i]["Horas"]))
$auxHA= $calculoA[$i]["Horas"];
else
$auxHA= 0;
?>
Código HTML:
<tr> <th><?php echo $auxM; ?></th> <td><?php echo $auxHP; ?></td> <td><?php echo $auxHA; ?></td> </tr>
Código PHP:
<?php
} //cierre del for
?>
GRACIAS!
PD: cuando llamo a la función "calcularHoras" obtengo todos las horas dentro de un rango y el filtrado de datos correspondiente desde la BD, y la graficación es por meses.