Foros del Web » Programando para Internet » PHP »

Validar formularios!

Estas en el tema de Validar formularios! en el foro de PHP en Foros del Web. Buenas, tengo el siguiente problema/duda. Estoy haciendo un sistema en php en el cual envio un formulario en 3 etapas.. en la primera pido cierto ...
  #1 (permalink)  
Antiguo 12/09/2012, 15:49
 
Fecha de Ingreso: mayo-2011
Mensajes: 36
Antigüedad: 12 años, 11 meses
Puntos: 0
Exclamación Validar formularios!

Buenas, tengo el siguiente problema/duda. Estoy haciendo un sistema en php en el cual envio un formulario en 3 etapas.. en la primera pido cierto datos, en la segunda otros y asi...

El problema en si es que estoy tratando la validacion de los campos de la siguiente forma:

Etapa 1: Archivo Editar.php (pido los siguientes datos:Dia, Hora Inicio, Hora Fin y Carreras ID). Paso eso mediante un Post a Editar2.php el cual valido que los campos no esten vacios.

Editar2.php:
...
if (empty ($_POST["dia"]) || empty ($_POST["horai"]) || empty ($_POST["horaf"]) || empty ($_POST["Carreras"])) {
$_SESSION["Error1"] = true;
header('Location: editar11.php?id='.$_SESSION['id']);
}
...

Si alguno esta vacio la variable Error1 se vuelve true y vuelve a editar.php, el cual tiene como condicion un if en el que si Error1 es true muestra un msj "Campo/s vacios".

Hasta ahi todo funciona bien, el hecho es que quiero identificar por separado cual variable esta vacia y señalar con un asterisco en particular la linea incompleta. Intente usar:

if (empty ($_POST["dia"]) and !empty ($_POST["horai"]) and !empty ($_POST["horaf"]) and !empty ($_POST["Carreras"])) {
$_SESSION["Error1"] = true;
header('Location: editar11.php?id='.$_SESSION['id']);
}

y la convinacion de todas...
if (!empty ($_POST["dia"]) and empty ($_POST["horai"]) and !empty ($_POST["horaf"]) and !empty ($_POST["Carreras"])) {
$_SESSION["Error2"] = true;
header('Location: editar11.php?id='.$_SESSION['id']);
}


y asi susecivamente... pero no me funciona del todo bien... es como que no toma algunas condiciones. Existe alguna forma mas optima (no tan cavernicola) de tratar esto?... desde ya GRACIAS!!
  #2 (permalink)  
Antiguo 12/09/2012, 16:19
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 9 meses
Puntos: 641
Respuesta: Validar formularios!

podrias usar arrays con condicionales

Código PHP:
Ver original
  1. if(empty($_POST["dia"])){
  2.     $error['dia'] = true;
  3. }
  4. if(empty($_POST["hora"])){
  5.     $error['hora'] = true;
  6. }
  7. if(empty($_POST["etc"])){
  8.     $error['etc'] = true;
  9. }

así cuando menos conoces bien cual es el campo que da error
  #3 (permalink)  
Antiguo 02/10/2012, 05:51
 
Fecha de Ingreso: mayo-2011
Mensajes: 36
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Validar formularios!

Muchas gracias, me sirvio :)


TEMA CERRADO

Etiquetas: formulario, variables
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:10.