MySQL System speichert nicht

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
  • Hey,
    Ich habe ein sehr großes Problem, unzwar das die Fraktionen und die Adminränge nicht gespeichert werden!
    Hier die Zeilen:


    enum SpielerDaten
    {
    pName[MAX_PLAYER_NAME],
    pLevel,
    pGeld,
    pKills,
    pTode,
    pFraktion,
    pLeader,
    pAdminlevel,
    pRang,
    pSkin,
    pStadt,
    Float:pHealth
    }
    new SpielerInfo[MAX_PLAYERS][SpielerDaten];
    COMMAND:makeadmin(playerid, params[])
    {
    if(!IstSpielerAdmin(playerid,6))
    {
    new pID,rank;
    if(sscanf(params,"ui",pID,rank))return SendClientMessage(playerid,Grau,"Nutze: /makeadmin [ID] [0 - 6]");
    if(rank<0||rank>6)return SendClientMessage(playerid,Weiß,"Nur von 0 bis 6");
    if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,Weiß,"Dieser Spieler ist nicht online");
    switch(rank) {
    case 0:{SendClientMessage(pID,Rot,"Du wurdest aus dem Team entlassen");SpielerInfo[pID][pAdminlevel]=1;}
    case 1:{SendClientMessage(pID,Weiß,"Du bist nun Supporter");SpielerInfo[pID][pAdminlevel]=2;}
    case 2:{SendClientMessage(pID,Weiß,"Du bist nun Super-Supporter");SpielerInfo[pID][pAdminlevel]=3;}
    case 3:{SendClientMessage(pID,Weiß,"Du bist nun Administrator");SpielerInfo[pID][pAdminlevel]=4;}
    case 4:{SendClientMessage(pID,Weiß,"Du bist nun Super-Administrator");SpielerInfo[pID][pAdminlevel]=5;}
    case 5:{SendClientMessage(pID,Weiß,"Du bist nun Co- Serverowner");SpielerInfo[pID][pAdminlevel]=6;}
    case 6:{SendClientMessage(pID,Weiß,"Du bist nun Server-Owner");SpielerInfo[pID][pAdminlevel]=7;}
    }
    SavePlayer(pID);
    }
    return 1;
    }


    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][pFraktion] = mysql_GetInt("accounts", "pFraktion", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pLeader] = mysql_GetInt("accounts", "Leader", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pAdminlevel] = mysql_GetInt("accounts", "Adminlevel", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pRang] = mysql_GetInt("accounts", "Rang", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pSkin] = mysql_GetInt("accounts", "Skin", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pStadt] = mysql_GetInt("accounts", "Stadt", "Name", SpielerInfo[playerid][pName]);
    }
    return 1;
    }
    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", SpielerInfo[playerid][pGeld], "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", "pFraktion", SpielerInfo[playerid][pFraktion], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Leader", SpielerInfo[playerid][pLeader], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Adminlevel", SpielerInfo[playerid][pAdminlevel], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Rang", SpielerInfo[playerid][pRang], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Skin", SpielerInfo[playerid][pSkin], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Stadt", SpielerInfo[playerid][pStadt], "Name", SpielerInfo[playerid][pName]);
    }
    }
    return 1;
    }


    case DIALOG_LOGIN:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das Angegebene Passwort war Falsch.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    }
    else
    {
    new SpielerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
    if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true))
    {
    SetPVarInt(playerid,"Eingeloggt",1);
    LoadPlayer(playerid);
    SpawnPlayer(playerid);
    return 1;
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das war das Falsche Passwort.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
    return 1;
    }
    }
    }
    else
    {
    Kick(playerid);
    }
    }
    }
    return 1;
    }


    Und ja, das Login / Register System habe ich von einem Tutorial weil ich keine Ahnung von MySQL hatte. Als beispiel habe ich den makeadmin befehl genommen.


    Danke im Vorraus!

    Mit freundlichen Grüßen

    #define