PHP - Registro sin importar mayusculas o minusculas

 
Vista:
Imágen de perfil de Felix
Val: 47
Ha disminuido su posición en 26 puestos en PHP (en relación al último mes)
Gráfica de PHP

Registro sin importar mayusculas o minusculas

Publicado por Felix (32 intervenciones) el 10/10/2018 21:53:38
Saludos amigos!

Necesito hacer una consulta previa y verificar que el nombre de usuario ya esté registrado, el problema es que debo evitar que se creen cuentas con el mismo nombre pero variando letras entre minúsculas y mayúsculas; por ejemplo que si existe el usuario "Pedro", otra persona no pueda crear una cuenta con el usuario "pEdro" o "Pedr0".

El código de registro de usuario es este:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
include('bd_conexion.php');
mysqli_query("SET NAMES 'utf8'");
 
 $tbl_name = "personas";
 
 $form_pass = $_POST['password'];
 
 $hash = password_hash($form_pass, PASSWORD_BCRYPT);
 
 if ($conexion->connect_error) {
 die("La conexion falló: " . $conexion->connect_error);
}
 
 $buscarUsuario = "SELECT * FROM $tbl_name WHERE nombre = '$_POST[nombre]'";
 
 $result = $conexion->query($buscarUsuario);
 
 $count = mysqli_num_rows($result);
 
 if ($count == 1) {
 	header("Location: ../index.php?mensaje=usuario_en_uso");
  }
 else{
 $query = "INSERT INTO personas
	(nombre,
	password,
	mail,
	sexo)
	VALUES
	('$_REQUEST[nombre]',
	'$hash',
	'$_REQUEST[mail]',
	'$_REQUEST[sexo]')" or die("Problemas en el INSERT ".mysqli_error());
 
 if ($conexion->query($query) === TRUE) {
 	include('validar_usuario.php');
 }
 else {
 echo "Error al crear el usuario." . $query . "<br>" . $conexion->error;
   }
 }
 mysqli_close($conexion);

Espero puedan ayudarme con esto gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 1.071
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Registro sin importar mayusculas o minusculas

Publicado por Yamil Bracho (888 intervenciones) el 10/10/2018 22:34:01
Puedes hacer algo como :

1
2
$nombre = strtoupper($_POST[nombre]);
$buscarUsuario = "SELECT * FROM $tbl_name WHERE UPPER(nombre) = '{$nombre}'";
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Registro sin importar mayusculas o minusculas

Publicado por Kathyu (905 intervenciones) el 11/10/2018 00:03:15
Lo mejor es pasar todo a un tipo de letra (MAYUS/MINUS) yo en mi caso uso en uso Mayúsculas para casi todo.

Ojo, no confunda que Pedro (o cualquiera de sus variantes con letras) nunca sera igual que PEDR0 (CON CERO) ahí lo que puede hacer es hacer que el textbox de ingreso de nombre de usuarios no permita números y listo (HTML5?)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar