Foros del Web » Programando para Internet » PHP »

Más que validar un campo vacio...

Estas en el tema de Más que validar un campo vacio... en el foro de PHP en Foros del Web. Buenas de nuevo, Me surge otra duda... Ya se como funcionan los formularios, como recibir, enviar, tratar datos, incluso validar si me han enviado algun ...
  #1 (permalink)  
Antiguo 07/01/2008, 16:59
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Más que validar un campo vacio...

Buenas de nuevo,

Me surge otra duda...

Ya se como funcionan los formularios, como recibir, enviar, tratar datos, incluso validar si me han enviado algun campo vacio.

Pero lo que no sé aun es como detectar que el usuario a puesto espacios delante de su "nick" por ejemplo.

Mi script de validar datos es el siguiente

Código PHP:
<?php

/* La funcion trim para que elimine los espacion en blanco, 
para evitar que alguien rellena con un " " (espacio) en el campo del formulario */
$var1 trim($_POST['nick']);
if (empty(
$var1)) {
    echo 
"No se encontró ningun nick </br>";
}
else{
    echo 
"El NICK es correcto </br>";
}
$var2 trim($_POST['nombre']);
if (empty(
$var2)) {
    echo 
"No se encontro nombre";
}
else{
    echo 
"El NOMBRE es correcto </br>";
}
?>
Esto funciona, pero si por ejemplo el usuario introduce ' ' (varios espacios en blanco) y luego pone sus datos funciona.


Ahora bien....
Si yo quiero guardar los datos del registro en mi base de datos, como puedo "eliminar los espacios en blanco que haya introducido "a consciencia" o no, el usuario delante de su nick, etc...

O no afecta para nada esto al introducir los datos en mi base de datos, dado que la funcion trim ya hace todo lo necesario, y en $var1 y $var2 tengo el contenido de los datos sin espacios y desde de estas variables donde tengo que enviar a mi BD, no?

Merciii
  #2 (permalink)  
Antiguo 07/01/2008, 17:10
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Re: Más que validar un campo vacio...

efectivamente la función TRIM elimina los espacios y las variables $var1 y $var2 ya no tienen los espacios en blanco tanto al principio como al final de la(s) palabra(s) TRIM no elimina espacios entre palabras, y si, el contenido de estas variables son las que guardarás en tu BD.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #3 (permalink)  
Antiguo 07/01/2008, 17:12
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Re: Más que validar un campo vacio...

http://es.php.net/manual/es/function.trim.php

La función trim ya elimina esos espacios (al principio y al final, no en el medio!!), así que tienes que usar las variables a las que has asignado el resultado de esa función.
  #4 (permalink)  
Antiguo 07/01/2008, 23:51
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Re: Más que validar un campo vacio...

Gracias a los dos, por las respuestas tan rápidas.

Y cómo puedo validar que en esa caja de texto no escriban por ejemplo acentos ni caractares tipo @ # ! ?¿"··% º ª etc..

Merciii
  #5 (permalink)  
Antiguo 08/01/2008, 10:16
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Re: Más que validar un campo vacio...

Cita:
Iniciado por neodani Ver Mensaje
Gracias a los dos, por las respuestas tan rápidas.

Y cómo puedo validar que en esa caja de texto no escriban por ejemplo acentos ni caractares tipo @ # ! ?¿"··% º ª etc..

Merciii
No encuentro nada por google
  #6 (permalink)  
Antiguo 08/01/2008, 23:54
Avatar de Infernal  
Fecha de Ingreso: septiembre-2004
Ubicación: Tamaulipas, Mexico
Mensajes: 124
Antigüedad: 19 años, 7 meses
Puntos: 0
Re: Más que validar un campo vacio...

Bueno eso se podria hacer con expresiones regulares:


Código PHP:
if(eregi("^([a-z0-9]{1,})$"$var1))
              echo 
"Correcto";
else
              echo 
"Contiene caracteres no validos"
  #7 (permalink)  
Antiguo 09/01/2008, 04:19
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Re: Más que validar un campo vacio...

Cita:
Iniciado por Infernal Ver Mensaje
Bueno eso se podria hacer con expresiones regulares:


Código PHP:
if(eregi("^([a-z0-9]{1,})$"$var1))
              echo 
"Correcto";
else
              echo 
"Contiene caracteres no validos"
Muchas gracias Infernal!

Ese tipo de validación era la que buscaba.

Yo creo que está bastante bien, para permitir que solo pongan nombres de usuarios correctos con letras del abecedario y se permitan números por todo el nick.

Mercii
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 00:57.