Foros del Web » Programando para Internet » PHP »

No Valida Formulario

Estas en el tema de No Valida Formulario en el foro de PHP en Foros del Web. Tengo el siguiente documento html: Código HTML: <html> <head> </head> <body> <form name= "prueba" method= "post" action= "valida.php" > Nombre: <input type= "text" name= "nombre" ...
  #1 (permalink)  
Antiguo 16/11/2006, 02:23
 
Fecha de Ingreso: mayo-2003
Mensajes: 148
Antigüedad: 20 años, 11 meses
Puntos: 0
No Valida Formulario

Tengo el siguiente documento html:

Código HTML:
<html>
<head></head>
<body>

<form name="prueba" method="post" action="valida.php">

Nombre: <input type="text" name="nombre"><br>
Edad: <input type="text" name="edad"><br>
Sexo: Hombre <input type="radio" name="sexo" value="hombre"> Mujer <input type="radio" name="sexo" value="mujer">

<input type="submit" value="Enviar">

</form>

</body>
</html> 
Lo envio a "validar.php"

Código PHP:
<?php

foreach ($_POST as $campos){
        if (empty(
$campos)){
            exit (
"Revisar - Campos Formularios Vacios");
            }
}

echo 
"Todo Perfes";
?>
Resulta que si dejo algun campo sin rellenar del input <type="text"> me da el mensaje de error, pero si dejo en blanco el input type=<"radio"> me lo da por bueno y no me sale ningun error. A que es debido? Gracias.
  #2 (permalink)  
Antiguo 16/11/2006, 02:55
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Código PHP:
<?php
$arr 
= array($_POST['nombre'], $_POST['edad'], $_POST['sexo']);
reset ($arr);

foreach (
$arr as $campos){
        if (empty(
$campos)){
            exit (
"Revisar - Campos Formularios Vacios");
            }
}
echo 
"Todo Perfes";
?>
Saludos
__________________
Hospedaje Web al mejor costo!
  #3 (permalink)  
Antiguo 16/11/2006, 08:47
 
Fecha de Ingreso: mayo-2003
Mensajes: 148
Antigüedad: 20 años, 11 meses
Puntos: 0
Gracias, pensé que sin meterlo en un array me cogería todos los valores del $_POST. ;)
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 03:22.