їCуmo comprobar si existe un usuario en MySQL?
#1

La verdad que no sй como comprobar si un usuario existe en el servidor. Pensaba utilizar un cуdigo algo masomenos asн aunque no sй si serнa completamente funcional
pawn Код:
new query[150];
format(query, sizeof(query), "SELECT * FROM `test1` WHERE `usuarios` Nombre = '%s'", PlayerName(playerid));
mysql_query(query);
if(mysql_fetch_row !=0)
{
//cуdigo
} else
{
 //cуdigo
}
//y acб sigue
Mi idea serнa si asн puedo saber si un usuario existe. Ya que lo quiero comprobar mediante el nombre del mismo.
Reply
#2

en esta parte:
Код:
if(mysql_fetch_row !=0)
{
// Si esta parte se ejecuta, significa que si existe
} else
{
 //En cambio si se ejecuta esta parte, significa que no
}
Si el usuario no existe, simplemente no devolverб nada, ni campos, ni columnas
Reply
#3

Pero coso, mi idea es comprobar el nombre їservirнa para eso?.
Reply
#4

Parte diciendo que plugin usas en el caso que uses alguno, y que versiуn del mismo.
Reply
#5

Creo que tu consulta a la db esta mal.

Deberia ser algo asi:
Код:
SELECT * FROM 'nombre_de_la_tabla' WHERE Campo='%s' LIMIT 1
Reply
#6

Quote:
Originally Posted by the_chaoz
Посмотреть сообщение
Creo que tu consulta a la db esta mal.

Deberia ser algo asi:
Код:
SELECT * FROM 'nombre_de_la_tabla' WHERE Campo='%s' LIMIT 1
creo que da igual si pones limit 1 por que la consulta verifica el nombre exacto.. sin importar mayusculas o minusculas
Reply
#7

Quote:
Originally Posted by xDarkuzSx
Посмотреть сообщение
creo que da igual si pones limit 1 por que la consulta verifica el nombre exacto.. sin importar mayusculas o minusculas
Lo que dijo the_chaoz esta bien, el codigo de justbored es:

Код:
SELECT * FROM `test1` WHERE `usuarios` Nombre = '%s'
El WHERE usuarios Nombre= esta mal

La tabla usuarios se selecciona despues de FROM, es decir:

Код:
SELECT * FROM usuarios
Y para seleccionar los datos de un determinado jugador pones

Quote:

SELECT * FROM 'usuarios' WHERE Nombre='%s' LIMIT 1

Espero que se me alla entendido :P
Reply
#8

Quote:
Originally Posted by The_Scope
Посмотреть сообщение
Lo que dijo the_chaoz esta bien
Si estб bien, pero estб demбs el limite ya que no creo que el sistema de bored tenga que se registren multiples cuentas con el mismo nombre..
Reply
#9

Ya que no me respondiste, te dejarй las 2 opciones con el plugin de BlueG.

Код:
/**********************************
VERSIУN R4, R5 Y R6
**********************************/
stock s_existe(nombredeusuario[])
{
	//Verificar si un usuario existe

	new g[80];
	format(g, sizeof(g), "SELECT * FROM nombredelatabla WHERE campo = '%s'", nombredeusuario);
	mysql_query(g);
	mysql_store_result();
	if(mysql_num_rows() != 0)
	{
		//Esto ocurrirб si el usuario estб registrado
		return 1;
	}
	else
	{
	    //Esto ocurrirб si el usuario no estб registrado
		return 0;
	}
}
Код:
/**********************************
VERSIУN R7
**********************************/
public OnPlayerRequestClass(playerid, classid)
{
	//Esto es para el sistema de ingreso y registro de cuentas
	new g[80];
	mysql_format(ConexionMySql, g, "SELECT * FROM tabla WHERE campo = '%s'", variablenombredeusuario);
	mysql_function_query(ConexionMySql, g, true, "IngresoRegistro", "d", playerid);

	return 1;
}

forward IngresoRegistro(playerid);
public IngresoRegistro(playerid)
{
	//Esto es para registrar una nueva cuenta o ingresar

	if(!IsPlayerConnected(playerid)) return 1;
	
	//Esto cuenta las columnas que existen
	new columnas, filas; cache_get_data(columnas, filas);

	if(columnas != 0)
	{
	    //Esto ocurrirб si el jugador existe
		
	    return 1;
	}
	else
	{
	    //Esto ocurrirб si el jugador no existe

		return 1;
	}
}
Reply
#10

Perdуn por no responderte, estaba aсadiendo otros sistemas. Uso la versiуn R6. Igualmente muchas gracias a todos.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)