[Ayuda] Error al consultar si el nombre de usuario ya está registrado.

  • Autor Autor srlemuuur
  • Fecha de inicio Fecha de inicio
srlemuuur

srlemuuur

Gamma
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Buenas,

Llevo varias horas peleándome y no encuentro el error, he probado hacerlo de mil maneras pero el resultado es el mismo, resulta que estoy haciendo el formulario de registro y la confirmación de si un nombre esta libre o no usando AJAX sencillo sin JSON , me esta llevando quebraderos de cabeza.

El codigo:

main.js

Insertar CODE, HTML o PHP:
function comUser(){
	user=$('#regUser').val();
	$.post("./control/guarda.php",{user:user},function(data) {
		if (data=="ok") 
			{	
				alert("Nombre registrado.");
			}

		if (data=="ko") {
			alert("Nombre libre.");
			
		}
	});
}

guarda.php

Insertar CODE, HTML o PHP:
if($_POST['user']){
        $user=mysqli_real_escape_string($enlace,$_POST['user']); // Recibimos el Usuario
        $result=mysqli_query($enlace,"SELECT usu_ide FROM usuarios WHERE usu_user=$user"); // Hacemos consulta
	$num=mysqli_num_rows($result); // Miramos si hay algun ide
	if($num==0) die("ko"); // En el caso de no haberlo, die>ko
	else die("ok"); // En el caso de  haberlo, die>ok
}


El problema es que actualmente siempre me muestra: usuario libre cuando pongo nombres de usuarios registrados.

He probado hacerlo de otra manera con un "SELECT usu_user FROM usuarios WHERE usu_user=$user" haciendo un mysqli_fecht_array y consultar si user es = al user de la consulta, en el caso de no serlo else ko, pero también me da problemas.

¿Que podría hacer?
Gracias.
No uso Frameworks ni nada en PHP.
 
Has intentado imprimir la consulta y probarla directamente en MySQL para ver que es lo que te arroja?
 
usa type : "POST", dataType: 'json'
o json $result = json_encode(); y usas
data.ok data.ko ???
 
Me parece que tu error es la consulta SQL, estas comparando un STRING sin poner comillas

PHP:
SELECT usu_ide FROM usuarios WHERE usu_user=$user

Intenta cambiar por:

PHP:
SELECT usu_ide FROM usuarios WHERE usu_user='$user'
 
Si te sirvió como te puse en el ejemplo?
 
Si te sirvió como te puse en el ejemplo?

Bueno no es conmigo pero si me funciono aunque tuve que borrar algunas cosas(mas que nada borrar lo relacionado a la BD porque no la incluiste y me da flojera crearla xd)
 
Hola,

Al final lo tneia casi todo correctamente, simplemente habia cometido pequeños fallos de caracteres, de tu ejemplo pille varias cosas 😛 Muchas gracias!
 
De nada y pues en lo que pueda ayudar me buscan 😀
 
Atrás
Arriba