Foros del Web » Programando para Internet » PHP »

Usuarios se registran con mismo nombre cambiando mayusculas

Estas en el tema de Usuarios se registran con mismo nombre cambiando mayusculas en el foro de PHP en Foros del Web. Hola, tengo un formulario de registro, cuando alguien se registra, se comprueba si el username ya esta cogido en la base de datos, la cosa ...
  #1 (permalink)  
Antiguo 16/06/2010, 19:44
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 18 años, 7 meses
Puntos: 5
Pregunta Usuarios se registran con mismo nombre cambiando mayusculas

Hola, tengo un formulario de registro, cuando alguien se registra, se comprueba si el username ya esta cogido en la base de datos, la cosa es que tengo dos users con estos nombres:
"AkIra" y "Akira"

Y ago la comprobacion asi:
Código PHP:
$comprobar_entrenador $db->FilasConsulta($db->Consulta("SELECT COUNT(id) FROM pokemonrpg_cuenta WHERE entrenador_nombre= '$entrenador_nombre'"));
if (
$comprobar_entrenador== true) return false
La cosa esque estos dos usuarios se han registrado con el mismo nombre, pero mysql los reconoce por igual... el campo de la bd esta en utf8_bin

¿Que esta mal?

Gracias!
__________________
http://www.pkmrpg.es
  #2 (permalink)  
Antiguo 16/06/2010, 19:58
Avatar de De_la_Cuesta_13  
Fecha de Ingreso: abril-2009
Ubicación: Cali, Colombia.
Mensajes: 265
Antigüedad: 15 años
Puntos: 14
Respuesta: Usuarios se registran con mismo nombre cambiando mayusculas

esto fijo ten funciona.

Link

Saludos.
__________________
Sólo quien nunca nada hace, nunca se equivoca.
  #3 (permalink)  
Antiguo 17/06/2010, 06:11
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 18 años, 7 meses
Puntos: 5
Respuesta: Usuarios se registran con mismo nombre cambiando mayusculas

Hola De_la_Cuesta_13, he probado con Collate, poniendo el campo a BINARY y asi:
Código PHP:
        $comprobar_existencia $db->ResultadoConsulta($db->Consulta("SELECT COUNT(id) FROM pokemonrpg_cuenta WHERE ".$campo_bd." = BINARY '$campo_valor'")); 
Pero nada, Zamblo es lo mismo que zamblo por ejemplo..

Un saludo!
__________________
http://www.pkmrpg.es
  #4 (permalink)  
Antiguo 20/06/2010, 00:00
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 8 meses
Puntos: 8
Respuesta: Usuarios se registran con mismo nombre cambiando mayusculas

El = en SQl distingue mayusculoas/minusculas, proba usando LIKE
Código PHP:
"SELECT COUNT(id) FROM pokemonrpg_cuenta WHERE entrenador_nombre LIKE '$entrenador_nombre'" 

Saludos!!
  #5 (permalink)  
Antiguo 20/06/2010, 10:59
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 18 años, 7 meses
Puntos: 5
Respuesta: Usuarios se registran con mismo nombre cambiando mayusculas

Hola fran86, he probado como dices y nada sigue igual:
Código PHP:
$comprobar_existencia $db->ResultadoConsulta($db->Consulta("SELECT COUNT(id) FROM pokemonrpg_cuenta WHERE nombre LIKE '$nombre'")); 
Tengo el usuario "zamblo" registrado y sin embargo Zamblo, ZAmblo,ZamBLO los toma como libres..

Un saludo!
__________________
http://www.pkmrpg.es
  #6 (permalink)  
Antiguo 20/06/2010, 11:19
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: Usuarios se registran con mismo nombre cambiando mayusculas

Trabájalo todo como minúsculas o mayúsculas. Cuando hagas el select para comprobar si ya existe, pasa el valor del formulario a minúsculas tanto como el valor en la BD, o también puedes hacerlo con mayúsculas.
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #7 (permalink)  
Antiguo 20/06/2010, 11:20
Avatar de adriancitov7  
Fecha de Ingreso: abril-2009
Ubicación: New York
Mensajes: 75
Antigüedad: 15 años
Puntos: 4
Respuesta: Usuarios se registran con mismo nombre cambiando mayusculas

Cita:
Iniciado por astut Ver Mensaje
Hola fran86, he probado como dices y nada sigue igual:
Código PHP:
$comprobar_existencia $db->ResultadoConsulta($db->Consulta("SELECT COUNT(id) FROM pokemonrpg_cuenta WHERE nombre LIKE '$nombre'")); 
Tengo el usuario "zamblo" registrado y sin embargo Zamblo, ZAmblo,ZamBLO los toma como libres..

Un saludo!
puede hacer una su consulta

Código PHP:
Ver original
  1. $usuario = strtolower($_POST['usuario']);

luego hacer la consulta para compruebe si usuario ya existe en la tabla usuarios si no existe registrar de otra forma mostrar aviso al


Código PHP:
Ver original
  1. function usuario_existe($nombreusuario)
  2.  {
  3.         mysql_connect("localhost","root","") or exit(mysql_error());
  4.         mysql_select_db("example") or exit(mysql_error());
  5.         $data = mysql_query("SELECT id FROM users WHERE username = '{$nombreusuario}'");
  6.         return (mysql_num_rows($data) > 0) ? 1 : 0;
  7.     }
  8.  
  9. if (usuario_existe($usuario)):
  10.    die("El usuario ya existe")
  11. else:
  12.  echo 'Felicitacion, su registro un exito';
  13.  /*
  14.    registrar al nuevo usuario
  15.  */
  16. endif;
  #8 (permalink)  
Antiguo 20/06/2010, 11:42
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: Usuarios se registran con mismo nombre cambiando mayusculas

Solo habría que agregarle una función al código de @adriancitov7 :

Código MySQL:
Ver original
  1. SELECT id FROM users WHERE LOWER(username) = $nombreusuario
  2.  
  3. // O...
  4.  
  5. SELECT id FROM users WHERE LCASE(username) = $nombreusuario

LCASE y LOWER son sinónimos...

Más :

http://www.electrictoolbox.com/upper...strings-mysql/
http://dev.mysql.com/doc/refman/5.1/...function_lower
http://www.sqlinfo.net/mysql/mysql_f...pper_lower.php
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #9 (permalink)  
Antiguo 21/06/2010, 06:50
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 18 años, 7 meses
Puntos: 5
Respuesta: Usuarios se registran con mismo nombre cambiando mayusculas

Gracias ya esta :D

Un saludo!
__________________
http://www.pkmrpg.es

Etiquetas: mayusculas, nombre, usuarios, cambios
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

SíEste tema le ha gustado a 3 personas




La zona horaria es GMT -6. Ahora son las 14:00.