Hola, tengo una pequeña duda:
Tengo que validar los campos de un formulario de registro de usuarios, si uno no cumple una cierta condicion pues este regresa a la pagina del formulario y muestra su error. El problema esta que si no has escrito ningun campo correctamente, siempre se muestra el ultimo de los errores y el resto no se muestra.
$pag=$_SERVER['HTTP_REFERER'];
if (strlen($usuario)<5 || strlen($usuario)>15)
{
header ("Location: $pag&error=1");
}
if (strlen($passwd)<6 || strlen($passwd)>16)
{
header ("Location: $pag&error=2");
}
if (!valid_email($email))
{
header ("Location: $pag&error=3");
}
y aqui esta el script que procesa el formulario y muestra el error:
<?php
if (isset($_GET['error'])){
$error[1] = "El nombre de usuario debera contener entre 5 y 15 caracteres.";
$error[2] = "La contraseña debera tener entre 6 y 16 caracteres.";
$error[3] = "El email escrito no es valido.";
echo "Mensaje: ".$error{$_GET['error']};
}
?>
Me gustariia que mostrase todos los errores que se hayan producido a la vez y no solo de uno en uno como hace esto, me podeis ayudar?