Comunidad de diseño web y desarrollo en internet online

validar Formularios EVITAR INSERTAR NUMEROS

Citar            
MensajeEscrito el 15 Sep 2006 04:16 pm
Hola.. deseaba saber si alguien me puede ayudar para evitar introducir números en un campo de nombres donde no hace falta que coloquen números. Lo estoy haciendo asi:

Código :

if((strlen($nombre)<3) || (strlen($nombre)>21) || (strlen($nombre)==0) && (!ereg("^[a-z]$",$nombre) || (ereg("^[1-9]$",$nombre))))
{
   echo "Lo haz escrito mal";
   }else{
   echo "Lo haz escrito bien";
   }


Pero al insertar números, estos pasan sin problema... Alguien me puede dar un consejo...

Por wizardxyz

37 de clabLevel



Genero:Masculino  

Valencia - España

firefox
Citar            
MensajeEscrito el 15 Sep 2006 04:30 pm
cambia el and por otro or, es decir, donde pones

Código :

==0) && (!ereg
pon

Código :

==0) || (!ereg
si no se tienen que dar las dos cosas para que entre por el if, y tendría que entrar si se diese cualquiera de las dos cosas.... (todo esto asi rapido, sin mirar mucho.... )¬¬ ¬¬

Por Yranac

421 de clabLevel



Genero:Masculino  

Lugo, Galicia

firefox
Citar            
MensajeEscrito el 15 Sep 2006 06:00 pm
De hecho yo quitaria ese ereg donde verificas si tienes numeros, con el primer ereg te deberia bastar.

Y bueno yo simplificaria todas esas condiciones a esto

Código :

if ( ! preg_match("/^[a-z\s]{3,21}$/i",$nombre) )
{
 echo "Mal";
}
else
{
 echo "Bien";
}


Si quieres que no acepte espacios en blanco. quitale el \s que esta dentro de los corchetes.
Si solo debe aceptar minusculas como lo tenias en el ereg, quita solamente la i.

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.