Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Senior++ en 6 Diciembre 2013, 20:24 pm



Título: Ayuda formulario
Publicado por: Senior++ en 6 Diciembre 2013, 20:24 pm

Result.php
Código:
<body>
<?php include_once('funciones.php')?>

<?php

if(!isset($_POST['aceptar']) || !ValoresPermitidos()){

header('Location: form1.php');
exit();

}

?>

funciones.php

Código:
<?php 
function ValoresPermitidos(){
$error = false;
for($i= 0; $i < 6; $i++){
if(!isset($_POST['numero_'.$i]) || empty ($_POST['numero_'.$i])
|| $_POST['numero_'.$i] < 1  || $_POST['numero_'.$i] > 20)
{
$error = true;

}

}

return !$error;
}
?>

 Bueno no se que esta fallando, y me estoy volviendo 'loco'  :xD
 no veo el error...

Explico lo que quiero que haga el programa e creado 6 formularios  de tipo texto y lo que quiero es que cuando el usuario ingrese un  numero mayor de 20  o menor de 1 o no existe o esta vacía pues  Redireccionar a otra página en este caso a form1.php

Este sería el form1.php:

Código:
<body>
<form action = "result.php" METHOD = "post">
<?php for($i= 0; $i < 6; $i++){?>
<input type = "text" name = "numero_"<?php echo $i;?> maxlength="2" /> <br />
<?php }  ?>
<input type = "submit" name = "aceptar" value = "Enviar" />
</form>
</body>
</html>

Entonces el problema es cuando ingreso por ejemplo: 1,2,3,4,5,6,7 me redirecciona a form1.php y como véis ninguno de los valores que e puesto pasa del 20 ni es inferior a 1 y aun asi me redirecciona.

Saludos y gracias de antemano ;)


Título: Re: Ayuda formulario
Publicado por: Senior++ en 7 Diciembre 2013, 21:05 pm
Respuesta: despues de muchas horas de investigar logre resolverlo, fue esta línea:

Código:
<input type = "submit" name = "aceptar" value = "Enviar" />

sería asi:
Código:
<input type = "submit" name = "submit" value = "Enviar" />

Saludos


Título: Re: Ayuda formulario
Publicado por: HackID1 en 7 Diciembre 2013, 22:47 pm
Si ahora se llama el input "submit" no deberías cambiarlo también en la función del fichero Result.php ???

Saludos.


Título: Re: Ayuda formulario
Publicado por: Senior++ en 8 Diciembre 2013, 13:01 pm
Si exactamente por eso esta linea es la correcta:

Código:
<input type = "submit" name = "submit" value = "Enviar" />