Foros del Web » Programando para Internet » PHP »

foreach asociado

Estas en el tema de foreach asociado en el foro de PHP en Foros del Web. Comunidad del foro, tengo una especia de datagrid de 8 productos donde : La primera columna: checkbox (Obligatorio) La Segunda columna para colocar un valor ...
  #1 (permalink)  
Antiguo 09/11/2010, 14:12
 
Fecha de Ingreso: octubre-2010
Mensajes: 25
Antigüedad: 14 años, 1 mes
Puntos: 0
foreach asociado

Comunidad del foro, tengo una especia de datagrid de 8 productos donde :
La primera columna: checkbox (Obligatorio)
La Segunda columna para colocar un valor
Y envio los datos a traves de un boton "Calcular" lo realice por medio de arrays y lo recibo por medio de un foreach:

$j=0;
foreach($_POST['idptochk'] as $id)
{
$idchk[$j]=$id;
$cantidadpto[$j]=$_POST[adicional][$id];
echo "Total Produto:".$cantidadpto."<br>";
$j++;
}

Aqui utilizo nuevamente unos arreglos esto con el fin que si marco el producto 1 y 3 nuevamente refresque la pagina con los check seleccionados y funciona con:

<input type="checkbox" name="idptochk[]" value="<? echo $idpto ?>"
<? foreach($idchk as $indice => $check) { if ($idpto==$check) { ?> checked <? } }?>>

Ahora tengo el problema es cuando se escribe el valor por ejemplo el mismo caso para el produto numero 1 con valor 10 y el producto numero 3 con valor 15 para ello tambien utilice un arreglo dentro del foreach foreach($_POST['idptochk'] as $id) y la variable $cantidadpto[$j] y lo que me escribe para ambas casillas de hecho me lo hace de manera ordenada en el producto 1 y 3 pero ambos con el valor 10 y no me coloca el consecutivo el código es:

<input name="adicional[<? echo $idpto;?>]" type="text" id="adicional" size="2" maxlength="30"
<? foreach($idchk as $indice => $check) { if ($idpto==$check) { foreach($cantidadpto as $valor) { ?> value=<? echo $valor ?> <? }}} ?>>

No se como puedo asociar estos valores con los productos que inicialmente se digitaron?

Etiquetas: foreach, asociados
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:30.