Foros del Web » Programando para Internet » PHP »

Validando un formulario completo (vamos que se puede!)

Estas en el tema de Validando un formulario completo (vamos que se puede!) en el foro de PHP en Foros del Web. hola, tengo el siguiente problema: Tengo un formulario que crea elementos dinamicos de formulario como textboxs o comboboxs y llegan a ser varios, cada uno ...
  #1 (permalink)  
Antiguo 10/02/2013, 09:25
 
Fecha de Ingreso: febrero-2011
Mensajes: 108
Antigüedad: 13 años, 1 mes
Puntos: 4
Validando un formulario completo (vamos que se puede!)

hola, tengo el siguiente problema:

Tengo un formulario que crea elementos dinamicos de formulario como textboxs o comboboxs y llegan a ser varios, cada uno con un nombre que puedo que puedo capturar eventualmente con PHP (de la forma nombre[i]).

Ahora quiero validar el formulario completo para no enviar los datos si existe algun campo vacio y tengo varias opciones en mi cabeza pero no logro llegar a ellas en codigo:

1) javascript recorriendo el formulario con getElementById (lo cual no me funciona no se porque, talves por que genero los campos dinamicamente igual con javascript). He buscado mucho de internet y ninguna solucion me funciona

2) Por lo cual recurrire al lado del servidor ( mejor aun) y tengo dos ideas, de las cuales 1 no me funciona y otra no la se hacer)

a) Preguntar si todos los elementos post estan con valor, extrañamente no me funciona talves por el mismo dinamismo con el que se crean los elementos de formulario

Código:
foreach ($_POST as $key => $value)
 {
        if (empty($value))
        {
               echo "existe un elemento vacio";
               break;
        }
}
b) La idea que estoy pensando ahora es que si me funciona cuando recorro el array generado de los nombres de los elementos si me los detecta

Código:
$descripcion= array();
 
foreach($_POST['descripcion'] as $key=>$value)
    $descripcion[]= $value;
en $descripcion tengo todos los datos que se pudieron haber generado en el formulario dinamico con elementos con name="descripcion[]" por lo que quiero revisar cada array como este y validar si este tiene algun campo vacio, es decir que si por ejemplo pueda saber que una parte del array esta vacia $descripcion[3] =""

Existe alguna instruccion para determinar eso?? existe alguna otra forma de hacer lo que quiero???
  #2 (permalink)  
Antiguo 10/02/2013, 10:22
 
Fecha de Ingreso: febrero-2011
Mensajes: 108
Antigüedad: 13 años, 1 mes
Puntos: 4
Respuesta: Validando un formulario completo (vamos que se puede!)

Me respondo solo xD, lo que hice fue verificar si el $value estaba vacio nomas y lo voy sumando a una variable de control para luego preguntar si control es 0 que envie si no que de un mensaje de error y no deje enviar

Código PHP:
Ver original
  1. $control = 0;
  2. $descripcion= array();
  3.  
  4. foreach($_POST['descripcion'] as $key=>$value){
  5. if (empty($value)){$control ++;}
  6.     $descripcion[]= $value; }

Soy menso jajaj, pero igual me gustaria saber si la solucion es optima o existe una mejor
  #3 (permalink)  
Antiguo 10/02/2013, 14:24
Avatar de bocho0610  
Fecha de Ingreso: enero-2010
Ubicación: <? echo "Santiago, Chile"; ?>
Mensajes: 341
Antigüedad: 14 años, 2 meses
Puntos: 26
Respuesta: Validando un formulario completo (vamos que se puede!)

La opcion mas eficas (segun mi opinion) es "required" de html5
__________________
Sigueme en Twitter!
Septimoarte.cl <-- Un mundo en cine.
  #4 (permalink)  
Antiguo 14/02/2013, 19:51
 
Fecha de Ingreso: febrero-2011
Mensajes: 108
Antigüedad: 13 años, 1 mes
Puntos: 4
Respuesta: Validando un formulario completo (vamos que se puede!)

mmm pero no uso html 5 aun, pero gracias por la informacion

Etiquetas: completo, formulario
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 18:50.