PHP - Asignacion valores Array

   
Vista:

Asignacion valores Array

Publicado por Victor (193 intervenciones) el 23/07/2015 10:58:51
Buenos dias.

Tengo un problema a la hora de asignarle valores a un array multimensional con variables calculadas.
Esta es la parte en la que monto un array obtenido de una consulta,esta parte funciona bien:
1
2
3
4
5
while($fila = $consulta->fetch_array())
{
    array_push($ciclo,$fila);
}
$ciclo = array("cantidad"=>$cantidadCiclos,"ciclo"=>$ciclo);

Ese array se usa para obtener valores y meterlos en variables:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
for($i=0;$i<$cantidadCiclos;$i++)
{
	//En este bucle le sumamos los valores extraidos de los ciclo
	//Para su posterior calculo cuando acabe dicho bucle.
	$indiPartos +=$ciclo['ciclo'][$i]['IndiceCiclo'];
	$indiCiclo +=$ciclo['ciclo'][$i]['IndiceCiclo'];
	$naciVivosAno+=$ciclo['ciclo'][$i]['NunVivosParto'];
	$indiDestAno+=$ciclo['ciclo'][$i]['Rep'];
	$indiProd+=$ciclo['ciclo'][$i]['NunVivosParto'];
	//$indiParcentRep+=$fila['ciclo']['NumCubriciones'];
	$partVivosParto +=$ciclo['ciclo'][$i]['NunVivosParto'];
	$partMuertosParto+=$ciclo['ciclo'][$i]['NumMuertosParto'];
	$partMomiParto +=$ciclo['ciclo'][$i]['NumMomiParto'];
	$partPorcentBajasParto +=$ciclo['ciclo'][$i]['NumBajasParto'];
	$partPromeDestt +=$ciclo['ciclo'][$i]['Rep'];
	$interGesta +=$ciclo['ciclo'][$i]['NumDiasGesParto'];
	$interDuraCiclo +=$ciclo['ciclo'][$i]['DuracionCiclo'];
}

Y aqui le doy valores al array final con los datos calculados,creo que es aqui donde esta el problema:
1
2
3
4
5
6
7
8
9
10
$indices['indices']['indiPartos'] =$indiPartos/$cantidadCiclos;
$indices['indices']['indiCiclo'] =$indiCiclo/$cantidadCiclos;
$indices['indices']['naciVivosAno'] =($naciVivosAno/$interDuraCiclo)*365;
$indices['indices']['indiDestAno'] =$indiDestAno/$cantidadCiclos;
$indices['indices']['indiProd'] =($naciVivosAno/$interDuraCiclo)*365;
$indices['indices']['indiParcentRep'] =100/$indiParcentRep;
$indices['indices']['naciVivosAno'] =$partVivosParto/$cantidadCiclos;
$indices['indices']['naciVivosAno'] =$naciVivosAno/$cantidadCiclos;
 
$result = array("cantidad"=>$cantidadCiclos,$indices);

En otra pagina(la que tiene la vista de los resultados) tengo esta linea para mostrar el dato calculado:
1
2
3
<td>
        <input name="totIndiPartos" type="text" value="<?php echo $valoresIndices['indices'][0]['indiPartos'];?>" disabled="true" style="width: 15px;">
    </td>
Y la pagina me pinta esto por pantalla:
Notice: Undefined index: indices in C:\xampp\htdocs\GestionFinca\interiorFichaAnimal.php on line 603

Alguna idea?

Gracias de antemano,saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Asignacion valores Array

Publicado por Victor (193 intervenciones) el 23/07/2015 12:17:28
En la pantalla de retorno,donde muestro los datos ya calculados en puesto un print_r y me puestra esto:
Array ( [cantidad] => 1 [indices] => Array ( [indices] => Array ( [indiPartos] => 23.456 [indiCiclo] => 23.456 [naciVivosAno] => 0.42568700342591 [indiDestAno] => 3.2 [indiProd] => 0.42568700342591 [indiParcentRep] => 100 [partAborto] => 0 [partVivosParto] => 3.2 [partMuertosParto] => 0 [partMomiParto] => 0 [partPorcentBajasParto] => 802 [partPromeDestt] => 3.2 [interGestacion] => 32 [interDuraCiclo] => 2743.8 ) [0] => 23.456 [1] => 23.456 [2] => 0.42568700342591 [3] => 3.2 [4] => 0.42568700342591 [5] => 100 [6] => 0 [7] => 3.2 [8] => 0 [9] => 0 [10] => 802 [11] => 3.2 [12] => 32 [13] => 2743.8 ) )

Mientras que en el resto la pagina los array devueltos tienen esta estructura,que es con la que estoy familiarizado y la que uso en toda la pagina:
Array ( [cantidad] => 1[ciclo] => Array ( [ciclo] => Array ( [CodCiclo] => [numCrotalMarrano] => [NumCiclo] => [Int] => [FechaCubricion] => [NumCubriciones] => [Verraco] => [FechaParto] => [NumDiasGesParto] => [NunVivosParto] => [NumFemParto] => [NumMuertosParto] => [NumMomiParto] => [NumBajasParto] => [FechaDestete] => [CalcDestete] => [MasMenosDestete] => [Rep] => [Observaciones] => [DuracionCiclo] => [IndiceCiclo] => [DestPorAnno] => [enable] => [cicloCalculado] => ) [0] => Array ( [0] => 1 [CodCiclo] => 1 [1] => 630000 [numCrotalMarrano] => 630000 [2] => 1 [NumCiclo] => 1 [3] => 0 [Int] => 0 [4] => 2005-12-17 [FechaCubricion] => 2005-12-17 [5] => [Verraco] => [6] => 2006-04-10 [FechaParto] => 2006-04-10 [7] => 11 [NumDiasGesParto] => 11 [8] => 8 [NunVivosParto] => 8 [9] => 2 [NumFemParto] => 2 [10] => 0 [NumMuertosParto] => 0 [11] => 0 [NumMomiParto] => 0 [12] => 2005 [NumBajasParto] => 2005 [13] => 2006-09-15 [FechaDestete] => 2006-09-15 [14] => 0 [CalcDestete] => 0 [15] => 8 [MasMenosDestete] => 8 [16] => 8 [Rep] => 8 [17] => El marrano ladra [Observaciones] => El marrano ladra [18] => 168 [DuracionCiclo] => 168 [19] => 2.17 [IndiceCiclo] => 2.17 [20] => 17.38 [DestPorAnno] => 17.38 [21] => 2 [enable] => 2 [22] => 1 [cicloCalculado] => 1 )

Por tanto el fallo es a la hora de montar el array,pero donde esta el falllo,me refiero al post anterior.

Es urgente,alguna idea?

Gracias de antemano
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar