Ver Mensaje Individual
  #9 (permalink)  
Antiguo 17/07/2013, 20:53
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Sacar un array desde un bucle

Sí, la mejor opción es crear los campos como array:

Código HTML:
Ver original
  1. <fieldset id="bloque-1">
  2. <p><input type="text" name="nombre[]" value="" /></p>
  3. <p><input type="text" name="descripcion[]" value="" /></p>
  4. <p><input type="text" name="precio[]" value="" /></p>
  5.  
  6. <fieldset id="bloque-2">
  7. <p><input type="text" name="nombre[]" value="" /></p>
  8. <p><input type="text" name="descripcion[]" value="" /></p>
  9. <p><input type="text" name="precio[]" value="" /></p>
  10.  
  11. etc
  12.  
  13. <fieldset id="bloque-x">
  14. <p><input type="text" name="nombre[]" value="" /></p>
  15. <p><input type="text" name="descripcion[]" value="" /></p>
  16. <p><input type="text" name="precio[]" value="" /></p>

Primero hay que ver cómo se reciben los datos para saber cómo manipularlos:

Código PHP:
Ver original
  1. var_dump($_POST);
  2.  
  3. /** Dará algo como:
  4. ['nombre'] => array(x) {
  5.       [0] => 'contenido del primer elemento',
  6.       [1] => 'contenido del segundo elemento',
  7.       *** etc ***
  8.       [x] => 'contenido del último elemento',
  9. }
  10. ['descripcion'] => array(x) {
  11.       [0] => 'contenido del primer elemento',
  12.       [1] => 'contenido del segundo elemento',
  13.       *** etc ***
  14.       [x] => 'contenido del último elemento',
  15. }
  16. ['precio'] => array(x) {
  17.       [0] => 'contenido del primer elemento',
  18.       [1] => 'contenido del segundo elemento',
  19.       *** etc ***
  20.       [x] => 'contenido del último elemento',
  21. }
  22. */
  23.  
  24.  
  25. // Para manejarlos:
  26. foreach($_POST['nombre'] as $indice => $nombre) {
  27.     // Ya se tiene $nombre, faltan los otros dos
  28.     $descripcion = $_POST['descripcion'][$indice];
  29.     $precio = $_POST['precio'][$indice];
  30. }
__________________
- León, Guanajuato
- GV-Foto