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

srlemuuur Seguir

Gamma
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
2 Ene 2014
Mensajes
368
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.
 

lombervid

Zeta
Verificación en dos pasos activada
Desde
29 Abr 2011
Mensajes
1.509
Has intentado imprimir la consulta y probarla directamente en MySQL para ver que es lo que te arroja?
 

srlemuuur

Gamma
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
2 Ene 2014
Mensajes
368

soniderot

Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
20 Ene 2014
Mensajes
12
usa type : "POST", dataType: 'json'
o json $result = json_encode(); y usas
data.ok data.ko ???
 

Javieer

Gamma
Programador
Desde
2 Ago 2013
Mensajes
161
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
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'
 

UserAlfa

Beta
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
25 Mar 2014
Mensajes
90
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)
 

srlemuuur

Gamma
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
2 Ene 2014
Mensajes
368
Hola,

Al final lo tneia casi todo correctamente, simplemente habia cometido pequeños fallos de caracteres, de tu ejemplo pille varias cosas :p Muchas gracias!
 
Arriba