Foros del Web » Programando para Internet » PHP »

Paso a Mayusculas

Estas en el tema de Paso a Mayusculas en el foro de PHP en Foros del Web. Muy buenas señores; Tengo el pequeño problema de que si en mi página un user que está registrado con por ejemplo: user = alfonso, password ...
  #1 (permalink)  
Antiguo 13/12/2002, 13:13
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
Paso a Mayusculas

Muy buenas señores;

Tengo el pequeño problema de que si en mi página un user que está registrado con por ejemplo: user = alfonso, password = 1234, cuando va a introducir su nick, si lo introduce en mayusculas o, lo más común poniendo Alfonso, no me lo valida porque mySQL distinge mayúsculas de minúsculas.

¿Saben de alguna forma para que no realice tal distinción y coja las posibles variantes entre mayúsculas y minúsculas?.

Gracias por todo.
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
  #2 (permalink)  
Antiguo 13/12/2002, 13:48
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

¿Como lo tienes almacenado en la BD? Si lo tienes todo en mayusculas, puedes pasar a mayusculas la entrada del usuario con la funcion PHP strtoupper().

Pero si no los tienes en la BD todos a mayusculas, puedes usar la funcion UCASE() de MySQL dentro de la consulta. Asi:

$consulta="select * from usuarios where UCASE(user)=UCASE('$user')";

Con esto estas comparando la version en mayusculas del campo de la BD con la version en mayusculas de la variable.

Yo recomendaria el segundo metodo.

Espero haber sido de ayuda.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 16/12/2002, 02:32
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
Gracias, probaré a ver que tal.

Un saludo
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
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 06:02.