Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/07/2011, 15:13
Avatar de eliza_ralves
eliza_ralves
 
Fecha de Ingreso: junio-2009
Ubicación: Caracas
Mensajes: 126
Antigüedad: 14 años, 9 meses
Puntos: 2
Exclamación Recorrer dos array a partir de otro como base

Hola que tal???

Estoy trancada en un recorrido de arreglos, el problema es el siguiente:

- Debo colocar en una gráfica las horas trabajadas para proyectos y actividades en un período dado (fecha inicio y fecha final).
- Lo que hice fue encapsular ese rango dado por:
$encabezado= obtenerEncabezadosPronostico($fechaInicio, $fechaFinal);

-La salida de la función lo almaceno en variables respectivamente:
$semana= $encabezado[$i][0]; // semanaActual
$anio = $encabezado[$i][1]; // añoActual

-Ahora lo que estaba haciendo era obtener de otra función, las horas para los proyectos y las actividades.
$calculo = calcularHoras($tipo_grafico, $dis_select, $ofic_select, $fechaInicio, $fechaFinal);

$calculoP = $calculo[0];
$calculoA = $calculo[1];

-Lo que hago a continuación es imprimir las horas de los proyectos y actividades por semana del mes correspondiente a dicha asignación

Código PHP:
// contiene la semana y año de todos los valores entre la fecha inicio
         // y fecha final para mostrar en la grafica los meses
         
$encabezadoobtenerEncabezadosPronostico($fechaInicio$fechaFinal);
                                
        
// imprime las horas de los proyectos y actividades
        // por semana del mes correspondiente a dicha 
       // asignación
       
for ($i 1$i <= count($encabezado); $i++){ 

               
$semana$encabezado[$i][0]; // semanaActual
               
$anio $encabezado[$i][1]; // añoActua

               
$auxMes obtenerNumMesDeSemana($semana$anio); 
                                    
              
$auxHP     $calculoP[$i]["Horas"]; // horas de Proyetos
              
$auxHA     $calculoA[$i]["Horas"]; // horas de Actividades      

             // escribo para cada iteración, el mes, las horas de proyectos y las horas de actividades
               
echo "<tr>";
               echo 
"<th>$auxMes</th>";
               echo 
"<td>$auxHP</td>";
               echo 
"<td>$auxHA</td>";
              echo 
"</tr>";

        } 
El problema, es que "explota" la variable $i, ya que el arreglo de calculoP puede ser menor que calculoA, y cuando en la BD no encuentre ningun valor, me devuelve que : Notice: Undefined offset: 22 in C:\.....obtenerGrafico.php on line xxx y es justo donde $auxHP = $calculoP[$i]["Horas"];

FECHA INICIO 07/2011 FECHA INICIO 09/2011

Mes Proyecto Actividad
07 18 8
07 22 40
08 46
09 25

He hecho la comparación dentro del

Código PHP:
if(($semana == $calculoP[$i]["Numero_Semana"]) && ($anio == $calculoP[$i]["Ano_Semana"]))
 {
      
$auxHP     $calculoP[$i]["Horas"]; 
} else{
            
$auxHP=0;
          } 
Pero no me imprime los proyectos. La cuestión es que los arreglos de proyectos y actividades son distintos y cuando los sigo con la misma variable $i, "explota". Cómo haría mejor ese recorrido para que cumpla que el numero de la semana y el año de $encabezado coincida con cada uno de los arreglos????

Disculpen si les incomoda el largo de mi pregunta!
__________________
“El mayor enemigo del conocimiento no es la ignorancia, sino la ilusión del conocimiento”— Stephen Hawking