Foros del Web » Programando para Internet » PHP »

Enviar un formulario con varios checkbox

Estas en el tema de Enviar un formulario con varios checkbox en el foro de PHP en Foros del Web. Buenos días a todos! Tengo un formulario con input text para datos personales y una lista generada con un while tal que así: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); ...
  #1 (permalink)  
Antiguo 05/09/2014, 07:43
 
Fecha de Ingreso: agosto-2008
Ubicación: Canarias, España - París, Francia
Mensajes: 105
Antigüedad: 15 años, 8 meses
Puntos: 3
Enviar un formulario con varios checkbox

Buenos días a todos!

Tengo un formulario con input text para datos personales y una lista generada con un while tal que así:
Código PHP:
Ver original
  1. <form name="form1" id="form1" method="post" action="procesa.php">
  2. <input type="text" name="nombre_apellidos">
  3. <input type="text" name="direccion">
  4. <input type="email" name="email>
  5.  
  6. <?php while($p = mysql_fetch_array($sql)): ?>
  7.  
  8. <input type="checkbox" name="seleccionado" value="1">
  9. <?php echo $p['nombre'];?>
  10. <input type="number" name="cantidad">
  11. <input type="precio" name="precio">
  12.  
  13. <?php endwhile; ?>
  14. </form>
Y me gustaría saber como hacer para enviar solo las filas con los datos que estén "checked". Aunque parezca fácil es que no me sale.
Muchas gracias por la ayuda.
  #2 (permalink)  
Antiguo 05/09/2014, 07:53
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Enviar un formulario con varios checkbox

Un checkbox no puede afectar la presencia de otros elementos, al menos no de manera nativa, que sería únicamente HTML.

Lo podrías intentar con Javascript, pero con PHP lamento decirte que no puedes hacer nada.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 05/09/2014, 17:50
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 11 años, 11 meses
Puntos: 320
Respuesta: Enviar un formulario con varios checkbox

Podrias hacer algo asi:
Código PHP:
Ver original
  1. $nro = 0;
  2. <?php
  3.    while($p = mysql_fetch_array($sql)):
  4. ?>
  5.       <input type="checkbox" name="rows[<?=$nro;?>][seleccionado]" value="1">
  6.       <?=$p['nombre'];?>
  7.       <input type="number" name="rows[<?=$nro;?>][cantidad]">
  8.       <input type="precio" name="rows[<?=$nro;?>][precio]">
  9.  
  10. <?php
  11.      $nro++;
  12.    endwhile;
  13. ?>

y luego en el php que recive el formulario, poner un codigo como este al inicio:

Código PHP:
Ver original
  1. $_POST["rows"] = array_filter(array_map(function($ele){
  2.    return (isset($ele["seleccionado"]) ? $ele : null);
  3. },$_POST["rows"]));
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios

Etiquetas: formulario, multiples, opciones
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 14:08.