Foros del Web » Programando para Internet » PHP »

inserta dinamicamente datos recojidos de CheckBox

Estas en el tema de inserta dinamicamente datos recojidos de CheckBox en el foro de PHP en Foros del Web. Buenas. Tengo un problema a la hora de recojer los datos generados dinamicamente y mostrados al usuario en una tabla. Basicamente es que no se ...
  #1 (permalink)  
Antiguo 01/10/2003, 09:54
 
Fecha de Ingreso: septiembre-2003
Mensajes: 5
Antigüedad: 14 años, 2 meses
Puntos: 0
Pregunta inserta dinamicamente datos recojidos de CheckBox

Buenas.
Tengo un problema a la hora de recojer los datos generados dinamicamente y mostrados al usuario en una tabla.
Basicamente es que no se como recojerlos.
Este es el codigo de mi form.
function buscar_almacen_marca($marca){
print "<form action=\"$PHPSELF\" method=\"post\">";
print "<div class=\"abajo\">";
print "<table>";
$con=odbc_connect("informix","xxx","xxx");
print "<tr class=\"cap\"><td class=\"cap\">key_p</td><td class=\"cap\">marca</td><td class=\"cap\">Artículo</td><td class=\"cap\">Referencia</td><td class=\"cap\">Precio</td><td class=\"cap\">Existencia</td><td class=\"cap\">Pedidos</td><td class=\"cap\">Cantidad</td></tr>";
$res=odbc_exec($con,"SELECT al_key_p, pr_marca,al_artic, al_refer,al_preu_venta,(select fsa_existencia from salmacen where fsa_almac=2 and fsa_key_p=al_key_p),(select sum(pel_cant_ped - pel_cant_rec) from fpelidos where pel_almac=2 and pel_key_p=al_key_p and pel_clite=0) FROM almacens,producto WHERE pr_marca='$marca' and al_prove=pr_prove and al_produc=pr_produc order by al_artic");
while (odbc_fetch_row($res)){
$key_p=odbc_result($res,1);
$marcaa=odbc_result($res,2);
$artic=odbc_result($res,3);
$refer=odbc_result($res,4);
$preu=odbc_result($res,5);
$existencia=odbc_result($res,6);
$cantped=odbc_result($res,7);
$key_p=trim($key_p);
if($_POST['OptExist']=="Todos"){
print "<tr class=\"cerca\"><td class=\"cerca\"><input name=\"key_p[]\" type=\"checkbox\" value=\"$key_p\" />$key_p</td><td class=\"cerca\">$marcaa</td><td class=\"cerca\">$artic</td><td class=\"cerca\">$refer</td><td class=\"cerca\">$preu</td><td class=\"cerca\">$existencia</td><td class=\"cerca\">$cantped</td><td class=\"cerca\"><input type=\"text\" name=\"$key_p\" onblur=\"MM_validateForm('$key_p','','NisNum');ret urn document.MM_returnValue\"\></td></tr>";
}
else{
if ($existencia>0){
print "<tr class=\"cerca\"><td class=\"cerca\"><input name=\"key_p[]\" type=\"checkbox\" value=\"$key_p\" />$key_p</td><td class=\"cerca\">$marcaa</td><td class=\"cerca\">$artic</td><td class=\"cerca\">$refer</td><td class=\"cerca\">$preu</td><td class=\"cerca\">$existencia</td><td class=\"cerca\">$cantped</td><td class=\"cerca\"><input type=\"text\" name=\"$key_p\" onblur=\"MM_validateForm('$key_p','','NisNum');ret urn document.MM_returnValue\"\></td></tr>";
}
}
}
odbc_close($con);
print "</table>";
print "</div>";
print "<input type=\"submit\" name=\"optlis\" value=\"Aceptar\"><input type=\"submit\" name=\"optlis\" value=\"Cancelar\">";
print "</form>";


}
  #2 (permalink)  
Antiguo 01/10/2003, 10:24
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Si no equivoco, con lo que tienes problemas es con recibir los datos del checkbox 'key_p[]'. Pues haciendo:
Código PHP:
$keys=$_POST['key_p']; 
en $keys tendras un array con todos los valores de los checkbox marcados. Y podras hacer por ejemplo:
Código PHP:
foreach ($keys as $key) {
echo 
$key.' : '.$_POST[$key];

para mostrar el valor del checkbox y el valor de la caja de texto asociada (segun tu codigo).

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 10/10/2003, 05:49
 
Fecha de Ingreso: septiembre-2003
Mensajes: 5
Antigüedad: 14 años, 2 meses
Puntos: 0
De acuerdo Gracias

Muchas gracias por tu interés. Tus indicaciones me han sido de gran ayuda.
Saludos.
  #4 (permalink)  
Antiguo 10/10/2003, 09:01
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Sólo cómo observación .. En el foreach() podemos obtener el indice y valor del elemento usando => ..

Código PHP:
foreach ($keys as $key=>$valor) {
echo 
$key.' : '.$valor;

Un Saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 21:03.