AYUDA... Con sscanf para una funcion MYSQL - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: Non-English (
https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (
https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (
https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: AYUDA... Con sscanf para una funcion MYSQL (
/showthread.php?tid=123464)
AYUDA... Con sscanf para una funcion MYSQL -
Zafire2008 - 25.01.2010
Hey necesito que al usar esta funcion me escriba la pass del pj pero no me funciona solo dice "Your pass is:" y no dice "Your pass is: blablabla" es raro :S es como sino agarrara los datos de la base de datos este es el codigo!
Код:
LoadData(playerid)
{
new
pName[24],
query[61],
line[100];
GetPlayerName(playerid, pName, 24);
mysql_real_escape_string(pName, pName);
format(query, sizeof(query), "SELECT * FROM jugadores WHERE nombre='%s'", pName); // we check and get the gata from that name
mysql_query(query);
mysql_store_result(); // we store the result.
mysql_fetch_row_format(line, "."); // we set a delimiter
sscanf(line, "p.sdd", pinfo[playerid][id], pinfo[playerid][nombre], pinfo[playerid][pass], pinfo[playerid][dinero], pinfo[playerid][trabajo], pinfo[playerid][admin]); // this will get the first 3 fields into pinfo[playerid][playeri]
mysql_free_result();
new textto[128];
format(textto, sizeof(textto), "Your pass is: %s", pinfo[playerid][pass]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, textto);
return 1;
}
[/code}
Re: AYUDA... Con sscanf para una funcion MYSQL -
Miguel - 26.01.2010
Puedes hacer esto que es mбs facil (anque no obtendras todos los datos):
pawn Код:
LoadData(playerid)
{
new
texto[15 + sizeof(pinfo[playerid][pass])],
query[70],
Nombre[24];
GetPlayerName(playerid, Nombre, 24);
mysql_real_escape_string(Nombre, Nombre);
format(query, sizeof(query), "SELECT pass FROM `players` WHERE nombre='%s'", Nombre); // cambia pass por el nombre del campo que contenga el pass
mysql_query(query);
mysql_store_result();
mysql_fetch_row(pinfo[playerid][pass]);
mysql_free_result();
format(texto, sizeof(texto), "Your pass is: %s", pinfo[playerid][pass]);
SendClientMessage(playerid, COLOR, texto);
}
O si no haces eso, necesitaras saber si el campo que estas intentando obtener esta en el mismo orden en la tabla, ejemplo:
id = 0
name = 1
pass = 2
(serнa "p.dss", pinfo[playerid][id], pinfo[playerid][name], pinfo[playerid][pass])
Si no estan en ese orden tendras que ordenarlos segun el orden que tengan.