Hey ich hab irgendwie n 'kleines' Problem mit nem Script, es läuft wie in der Überschrift zu sehen ist auf MySql
Wie ich z.b. eine Variable Speichern lassen kann ist kein problem das geht..
nur mit dem auslesen habe ich so meine probleme,
wie z.b. wenn ich connecte bin ich cj (skin 0) in der mysql db aber skin 2
oder mein geld was in der datenbank gesaved wird nach /setstat, wird nicht geladen..
der score wird manchmal geladen, manchmal auch nicht..
dumm zu erklären aber wäre nett wenn ihr mir helft / helfen könnt..
ich schätze mal hier sollen die daten ausgelesen werden..
stock LoadAccountVariables(playerid){ new EscapedName[MAX_PLAYER_NAME]; if(GetPVarInt(playerid, "Authentication") == 1) { mysql_real_escape_string(GetName(playerid), EscapedName); format(Query, sizeof(Query), "SELECT * FROM `Accounts` WHERE `Username` = '%s'", EscapedName); mysql_query(Query); mysql_store_result(); mysql_fetch_row_format(Query, "|"); sscanf(Query, "e<p<|>s[24]s[129]s[64]s[129]s[17]ddddfffffddddds[128]s[128]s[128]>", pStats[playerid]); } else print("[MySQL ERROR] LoadAccountVariables() was called, but to a non-connected ID."); mysql_free_result();}stock GetFromAccount(username[], obtaining[], holdingvar[]){ format(Query, sizeof(Query), "SELECT `%s` FROM `Accounts` WHERE `Username` = '%s'", obtaining, username); mysql_query(Query); mysql_store_result(); if(mysql_fetch_row(holdingvar) == 1) { mysql_free_result(); } return 1;}
da es so aussieht beim speichern:
stock SavePlayerAccount(playerid){ if(GetPVarInt(playerid, "Authentication") == 1) { format(Query, sizeof(Query), "UPDATE `Accounts` SET `AdminLevel` = %d, `Money` = %d, `Score` = %d, `Skin` = %d, `Donator` = %d, `Respekt` = %d, `Warns` = %d WHERE `Username` = '%s'", pStats[playerid][pAdminLevel], GetPlayerCash(playerid), GetPlayerScore(playerid), GetPlayerSkin(playerid), pStats[playerid][pDonator], pStats[playerid][pRespekt] ,pStats[playerid][pWarns], GetEscName(playerid)); mysql_query(Query); GetPlayerHealth(playerid, pStats[playerid][pHealth]); GetPlayerArmour(playerid, pStats[playerid][pArmour]); GetPlayerPos(playerid, pStats[playerid][pPosX], pStats[playerid][pPosY], pStats[playerid][pPosZ]); format(Query, sizeof(Query), "UPDATE `Accounts` SET `Health` = %f, `Armour` = %f, `PositionX` = %f, `PositionY` = %f, `PositionZ` = %f WHERE `Username` = '%s'", pStats[playerid][pHealth], pStats[playerid][pArmour], pStats[playerid][pPosX], pStats[playerid][pPosY], pStats[playerid][pPosZ], GetEscName(playerid)); mysql_query(Query); GetPlayerIp(playerid, pStats[playerid][pIPAddress], 17); format(Query, sizeof(Query), "UPDATE `Accounts` SET `IP Address` = '%s', `Kills` = %d, `Deaths` = %d, `Logins` = %d, `PM Status` = %d WHERE `Username` = '%s'", pStats[playerid][pIPAddress], pStats[playerid][pKills], pStats[playerid][pDeaths], pStats[playerid][pLogins], pStats[playerid][pPMStatus], GetEscName(playerid)); mysql_query(Query); } else print("[MySQL ERROR] SavePlayerAccount() was called, but to a non-connected ID."); return 1;}
und dann wüsste ich noch wie ich das passwort NICHT verschlüsselt speichern lassen kann o:
dazu wird WP_Hash wenn ich mich nicht irre genutzt ( Whirlpool das plugin.. )
das script ist hier:
http://pastebin.com/H3vrJmJH
Hier mal ein Screen der Datenbank..
//Edit1 : Screen Beigefügt