Szerző Téma: Nem tölti be az adatokat (Mysql)  (Megtekintve 523 alkalommal)

Nem elérhető instant

  • 2778
  • ZzzzzZ
    • Profil megtekintése
Nem tölti be az adatokat (Mysql)
« Dátum: 2012. október 26. - 17:35:23 »
0 Show voters
Üdv, az lenne a problémám hogy hiába menti el az adatokat de nem akarja betölteni azokat :S
a kód:
 
public OnPlayerConnect(playerid)
{
format( g_szQuery, sizeof( g_szQuery ), \"SELECT `bank`,`level` FROM `players` WHERE `name` = \'%s\'\",   pName(  playerid ) );
mysql_function_query( 1, g_szQuery, true, \"THREAD_DataLoad\", \"d\", playerid );
        return 1;
}
forward THREAD_DataLoad( playerid );
public THREAD_DataLoad( playerid )
{
   new
 szFetch[ 2 ][ 100 ];
   cache_get_row( 0, 0, szFetch[ 0 ] ); // Bank
   cache_get_row( 0, 1, szFetch[ 1 ] ); // Admin Szint
   SetPVarInt( playerid, \"Bank\",  strval( szFetch[ 0 ] ) );
   SetPVarInt( playerid, \"Level\", strval( szFetch[ 1 ] ) );
   return 1;
}

 
Mentés:
 
stock SavePlayer(playerid, regid)
{
if(IsPlayerNPC(playerid)) return 1;
// Ha nincs bejelentkezve és még nem spawnolt le, akkor nem mentjük. Ezt ajánlatos itthagyni, mivel ezmiatt nekem sok bug keletkezett!
if(g_PlayerFlags{playerid} & (e_LOGGED_IN | e_FIRST_SPAWN) == (e_LOGGED_IN | e_FIRST_SPAWN))
{
getdate(year, month, day);
gettime(hour, minute, second);
format(g_szQuery, sizeof(g_szQuery), \"UPDATE `players` SET `laston` = \'%02d.%02d.%02d/%02d.%02d.%02d\', `money` = %d, `score` = %d, `kills` = %d, `deaths` = %d, `fightingstyle` = \'%d\',`skin` = \'%d\',`bank` = \'%d\',`level` = \'%d\'  WHERE `reg_id` = %d\",
year, month, day, hour, minute, second, GetPlayerMoney(playerid), GetPlayerScore(playerid), GetPVarInt(playerid, \"Kills\"), GetPVarInt(playerid, \"Deaths\"), GetPlayerFightingStyle(playerid),GetPVarInt(playerid,\"Skin\"),GetPVarInt(playerid,\"Bank\"),GetPVarInt(playerid,\"Level\"),
regid);
mysql_function_query(1, g_szQuery, false, \"OnQueryFinish\", \"\");
// %02d azt jelenti, hogyha a szám egyjegyû (1, 5, 7, stb... ), akkor tegyen elé egy 0-t. Pl: 05, 07.
// Ezt általában idõre használják, mivel így \'érthetõbb\'.
// Ez ugyanúgy mûködik %03d-vel %04d-vel, és így továb... ^
}
return 1;
}
« Utoljára szerkesztve: 2012. október 26. - 17:38:54 írta ZzzzzZ »

Nem tölti be az adatokat (Mysql)
« Válasz #1 Dátum: 2012. október 27. - 21:28:52 »
+1 Show voters
Így próbáld:
 
forward THREAD_DataLoad( playerid );
public THREAD_DataLoad( playerid )
{
new
fetch[12],
rows,
fields;
cache_get_data(rows, fields, 1);
cache_get_row( 0, 0, fetch); // Bank
SetPVarInt( playerid, \"Bank\",  strval( fetch ) );
cache_get_row( 0, 1, fetch); // Admin Szint
SetPVarInt( playerid, \"Level\", strval( fetch ) );
return 1;
}

Nem elérhető instant

  • 2778
  • ZzzzzZ
    • Profil megtekintése
Nem tölti be az adatokat (Mysql)
« Válasz #2 Dátum: 2012. október 27. - 21:55:05 »
0 Show voters
Betölt mindent köszi zsoleszka

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal