[MySQL] Laden/Speichern

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Guten Tag Com,


    Und zwar möchte ich nun wenn ich vom Server gehe das meine Daten speichern.


    Code:



    public OnPlayerDisconnect(playerid,reason)
    {
    new query[150],name[MAX_PLAYER_NAME+1];
    GetPlayerName(playerid,name,sizeof name);
    mysql_real_escape_string(name,name);
    format(query,sizeof query,"UPDATE `Accounts` SET `Adminlevel` = %d WHERE `Nickname` = '%s'",pInfo[playerid][Adminlv],name);
    mysql_query(query);
    mysql_free_result();
    return 1;
    }


    Und wenn ich mich einlogge das meine Daten sich Laden


    Code:



    new name[MAX_PLAYER_NAME+1],query[150];
    GetPlayerName(playerid,name,sizeof name);
    GetFromAccount(name,"Passwort",pInfo[playerid][Passwort]);
    if(!strcmp(inputtext,pInfo[playerid][Passwort]))
    {
    TextDrawShowForPlayer(playerid, login1);
    TextDrawShowForPlayer(playerid, login2);
    TextDrawShowForPlayer(playerid, login3);
    TextDrawShowForPlayer(playerid, login4);
    TextDrawShowForPlayer(playerid, login5);
    TextDrawShowForPlayer(playerid, login6);
    TextDrawShowForPlayer(playerid, login9);
    TextDrawShowForPlayer(playerid, login11);
    TextDrawHideForPlayer(playerid, blackTD);
    mysql_real_escape_string(name,name);
    format(query,sizeof query,"SELECT * FROM `Accounts` WHERE `Nickname` = '%s'",name);
    mysql_query(query);
    mysql_store_result();
    while(mysql_fetch_row_format(query))
    sscanf(query,"e<p<|>s[24]s[128]d>",pInfo[playerid]);
    SpawnPlayer(playerid);
    }


    Ich weiss nicht weiter wie ich dies nun machen soll.
    Ich hoffe hier sind welche die mir helfen können.



    Mfg
    Maadison

  • Also ich arbeite auch mit Mysql, und mein stock für den Speicher Befehl sieht so aus:


    stock SavePlayer(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    if(GetPVarInt(playerid,"Eingeloggt") == 1)
    {

    mysql_SetInt("accounts", "Level", SpielerInfo[playerid][pLevel], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Geld", GetPlayerMoney(playerid), "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Kills", SpielerInfo[playerid][pKills], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Tode", SpielerInfo[playerid][pTode], "Name", SpielerInfo[playerid][pName]);
    mysql_SetFloat("accounts", "Health", SpielerInfo[playerid][pHealth], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Perso", SpielerInfo[playerid][pPerso], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Geschlecht", SpielerInfo[playerid][pGeschlecht], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Age", SpielerInfo[playerid][pAge], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "National", SpielerInfo[playerid][pNational], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Admin", SpielerInfo[playerid][pAdmin], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Konto", SpielerInfo[playerid][pKonto], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "PIN", SpielerInfo[playerid][pPIN], "Name", SpielerInfo[playerid][pName]);
    }
    }
    return 1;
    }


    Und meine Lade Befehl so:


    stock LoadPlayer(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    GetPlayerName(playerid, SpielerInfo[playerid][pName], MAX_PLAYER_NAME);
    SpielerInfo[playerid][pLevel] = mysql_GetInt("accounts", "Level", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pGeld] = mysql_GetInt("accounts", "Geld", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pKills] = mysql_GetInt("accounts", "Kills", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pTode] = mysql_GetInt("accounts", "Tode", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pPerso] = mysql_GetInt("accounts", "Perso", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pGeschlecht] = mysql_GetInt("accounts", "Geschlecht", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pAge] = mysql_GetInt("accounts", "Age", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pNational] = mysql_GetInt("accounts", "National", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pAdmin] = mysql_GetInt("accounts", "Admin", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pKonto] = mysql_GetInt("accounts", "Konto", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pPIN] = mysql_GetInt("accounts", "PIN", "Name", SpielerInfo[playerid][pName]);
    }
    return 1;
    }


    MfG