Bank System lässt nichts mehr in Datenbank SPEICHERN! Hilfe

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 Abend Leute,


    ich habe eben ein Bank System basierend auf MySQL geschrieben. Nun ja es speichert zwar..aber nur die ERSTE Person :cursing:
    Sprich wenn ich einen neuen Account anlege, wird NICHTS mehr gespeichert 8|


    Der Register Teil...
    new query[128], Str128[128];
    if(!response) return Kick(playerid);
    if(!strlen(inputtext)) return ShowDialog(playerid, DG_REGISTER);
    else
    {
    CreateAccount(playerid, inputtext);
    format(query,sizeof(query),"INSERT INTO `Accounts` (Name,Passwort,Registriert,Level,Adminlevel,Premium,Skin,Tutorial,Personalausweis,Gebannt,Geld) VALUES('%s','%s','0','0','0','0','0','0','0','0','0')",GetName(playerid), inputtext);
    mysql_query(query);
    mysql_store_result();
    format(Str128, sizeof(Str128), "Der Account "#COLB"%s "#COLW"wurde mit dem Passwort "#COLB"%s "#COLW"registriert.", GetName(playerid), inputtext);
    SendClientMessage(playerid, Weiß, Str128);
    }


    CreateAccount Stock
    stock CreateAccount(playerid, passwort[])
    {
    new query[256],Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
    mysql_real_escape_string(Name,Name);
    mysql_real_escape_string(passwort,passwort);
    format(query, sizeof(query), "INSERT INTO Accounts (Name, Passwort) VALUES ('%s', '%s')", Name, passwort);
    mysql_query(query);
    SpielerInfo[playerid][ pRegistriert ] = 1;
    SpielerInfo[playerid][ pLevel ] = Startlevel;
    SpielerInfo[playerid][ pAdminlevel ] = 0;
    SpielerInfo[playerid][ pPremium ] = 0;
    SpielerInfo[playerid][ pSkin ] = (ZiviSkin[random(10)]);
    SpielerInfo[playerid][ pGeld ] = Startgeld;
    SpielerInfo[playerid][ pPerso ] = 0;
    SpielerInfo[playerid][ pTutorial ] = 0;
    SpielerInfo[playerid][ pGebannt ] = 0;
    SpielerInfo[playerid][ pBankStatus ] = 0;
    return true;
    }

    Hier die Stocks
    stock LoadPlayer(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    SpielerInfo[playerid][ pRegistriert ] = mysql_GetInt("Accounts", "Registriert", "Name", GetName(playerid));
    SpielerInfo[playerid][ pLevel ] = mysql_GetInt("Accounts", "Level", "Name", GetName(playerid));
    SpielerInfo[playerid][ pAdminlevel ] = mysql_GetInt("Accounts", "Adminlevel", "Name", GetName(playerid));
    SpielerInfo[playerid][ pPremium ] = mysql_GetInt("Accounts", "Premium", "Name", GetName(playerid));
    SpielerInfo[playerid][ pSkin ] = mysql_GetInt("Accounts", "Skin", "Name", GetName(playerid));
    SpielerInfo[playerid][ pPerso ] = mysql_GetInt("Accounts", "Personalausweis", "Name", GetName(playerid));
    SpielerInfo[playerid][ pTutorial ] = mysql_GetInt("Accounts", "Tutorial", "Name", GetName(playerid));
    SpielerInfo[playerid][ pGebannt ] = mysql_GetInt("Accounts", "Gebannt", "Name", GetName(playerid));
    SpielerInfo[playerid][ pBankStatus ] = mysql_GetInt("Accounts", "Kontogeld", "Name", GetName(playerid));
    SpielerInfo[playerid][ pGeld ] = mysql_GetInt("Accounts", "Geld", "Name", GetName(playerid));
    }
    return 1;
    }


    stock SavePlayer(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    mysql_SetInt("Accounts", "Registriert", SpielerInfo[playerid][ pRegistriert ], "Name", GetName(playerid));
    mysql_SetInt("Accounts", "Level", SpielerInfo[playerid][ pLevel ], "Name", GetName(playerid));
    mysql_SetInt("Accounts", "Adminlevel", SpielerInfo[playerid][ pAdminlevel ], "Name", GetName(playerid));
    mysql_SetInt("Accounts", "Premium", SpielerInfo[playerid][ pPremium ], "Name", GetName(playerid));
    mysql_SetInt("Accounts", "Skin", SpielerInfo[playerid][ pSkin ], "Name", GetName(playerid));
    mysql_SetInt("Accounts", "Personalausweis", SpielerInfo[playerid][ pPerso ], "Name", GetName(playerid));
    mysql_SetInt("Accounts", "Tutorial", SpielerInfo[playerid][ pTutorial ], "Name", GetName(playerid));
    mysql_SetInt("Accounts", "Gebannt", SpielerInfo[playerid][ pGebannt ], "Name", GetName(playerid));
    mysql_SetInt("Accounts", "Kontogeld", SpielerInfo[playerid][ pBankStatus ], "Name", GetName(playerid));
    mysql_SetInt("Accounts", "Geld", SpielerInfo[playerid][ pGeld ], "Name", GetName(playerid));
    }
    return 1;
    }


    Hier die Dialoge


    case DG_BANK_AUSZAHLEN:
    {
    new zahl = strval(inputtext);
    if(zahl < 500001 && zahl > 0)
    {
    if(!strlen(inputtext))
    {
    ShowPlayerDialog(playerid, DG_BANK_AUSZAHLEN, DG_INPUT, ServerName, "Bitte gebe den gewünschten Betrag ein!", "Auszahlen", "Abbrechen");
    return 1;
    }
    else
    {
    new geld = strval(inputtext);
    if (SpielerInfo[playerid][pBankStatus] >= geld)
    {
    GivePlayerMoney(playerid, geld);
    SpielerInfo[playerid][pBankStatus] -= geld;
    return 1;
    }
    else
    {
    SendClientMessage(playerid,Rot, "Info:"COLW" Soviel Geld hast du nicht auf der Bank!");
    return 1;
    }
    }
    }
    else
    {
    SendClientMessage(playerid,Rot, "Info:"COLW" Bitte wähle einen Betrag zwischen 0-500000 $");
    return 1;
    }
    }
    case DG_BANK_EINZAHLEN:
    {
    new zahl = strval(inputtext);
    if(zahl < 500001 && zahl > 0)
    {
    if(!strlen(inputtext))
    {
    ShowPlayerDialog(playerid, DG_BANK_EINZAHLEN, DG_INPUT, ServerName, "Bitte gebe den gewünschten Betrag ein. (max. 500 k)", "Einzahlen", "Verlassen"); //Wird ihm der Dialog erneut gezeigt.
    return 1;
    }
    else
    {
    new geld = strval(inputtext);
    if(GetPlayerMoney(playerid) >= geld)
    {
    GivePlayerMoney(playerid, -geld);
    SpielerInfo[playerid][pBankStatus] += geld;
    return 1;
    }
    else
    {
    SendClientMessage(playerid,Rot, "Info:"COLW" Soviel Geld hast du nicht bei dir!");
    return 1;
    }
    }
    }
    else
    {
    SendClientMessage(playerid,Rot, "Info:"COLW" Bitte wähle einen Betrag zwischen 0-500000 $");
    return 1;
    }
    }
    case DG_BANK_UEBERWEISEN_2:
    {
    if(response == 0)
    {
    SendClientMessage(playerid,Rot,"Info:"COLW" Du hast den Vorgang abgebrochen!");
    return 1;
    }
    if(response == 1)
    {
    new geld = strval(inputtext);
    new giveplayerid = GetPVarInt(playerid, "Überweisung");
    if(geld < 50 || geld > 100000)
    {
    SendClientMessage(playerid,Rot,"Info:"COLW" Der Betrag muss zwischen 50$ und 100000$ liegen!");
    ShowPlayerDialog(playerid, DG_BANK_UEBERWEISEN_2, DG_INPUT,ServerName, "Bitte gebe nun den Betrag ein den du überweisen willst!", "Überweisen", "Abbrechen");
    return 1;
    }
    if(IsPlayerConnected(giveplayerid))
    {
    if(SpielerInfo[playerid][pBankStatus] >= geld)
    {
    if(geld >= 1 || geld <=100001)
    {
    new string[120];
    new string2[128];
    new name[MAX_PLAYER_NAME];
    new pname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof(name));
    GetPlayerName(giveplayerid, pname, sizeof(pname));
    SpielerInfo[playerid][pBankStatus]= -geld;
    SpielerInfo[giveplayerid][pBankStatus]= geld;
    format(string, sizeof(string), "Info:"COLW" Du hast %s gerade $%d überwiesen!", pname, geld);
    SendClientMessage(playerid, Rot, string);
    DeletePVar(playerid, "Überweisung");
    format(string2, sizeof(string2), ""COLR"Info:"COLW" %s [ID:%d] hat %s [ID:%d] $%d überwiesen!",name,playerid,pname,giveplayerid,geld);
    SendAdminMessage(Gelb, string2);
    format(string2, sizeof(string2), "Info:"COLW" %s hat dir $%d überwiesen!",name,geld);
    SendClientMessage(giveplayerid, Rot, string2);
    return 1;
    }
    else
    {
    SendClientMessage(playerid,Rot,"Info:"COLW" Dein Betrag muss zwischen 50$ und 100000$ liegen!");
    }
    }
    else
    {
    SendClientMessage(playerid,Rot,"Info:"COLW" So viel Geld hast du nicht auf der Bank!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, Rot, "Info:"COLW" Dieser Spieler ist nicht Online!");
    return 1;
    }
    }
    }
    case DG_BANK_UEBERWEISEN_1:
    {
    if(!strlen(inputtext))
    {
    ShowPlayerDialog(playerid, DG_BANK_UEBERWEISEN_1, DG_INPUT, "Überweisen", "Bitte gebe die ID des Spielers ein, dem du Geld überweisen willst!", "Weiter", "Abbrechen");
    return 1;
    }
    if(response == 0)
    {
    SendClientMessage(playerid,Rot,"Info:"COLW" Du hast den Vorgang abgebrochen!");
    return 1;
    }
    if(response == 1)
    {
    new giveplayerid = strval(inputtext);
    SetPVarInt(playerid, "Überweisung", giveplayerid);
    if(!strlen(inputtext))
    {
    ShowPlayerDialog(playerid, DG_BANK_UEBERWEISEN_1, DG_INPUT, ServerName, "Bitte gebe die ID des Spielers ein, dem du Geld überweisen willst!", "Weiter", "Abbrechen");
    return 1;
    }
    if(IsPlayerConnected(giveplayerid))
    {
    if(IsPlayerNPC(giveplayerid))
    {
    SendClientMessage(playerid,Rot,"Info:"COLW" Du kannst keinem Bot Geld überweisen!");
    return 1;
    }
    if(giveplayerid == playerid)
    {
    SendClientMessage(playerid,Rot,"Info:"COLW" Du kannst dir nicht selber etwas überweisen!");
    return 1;
    }
    ShowPlayerDialog(playerid, DG_BANK_UEBERWEISEN_2, DG_INPUT, ServerName, "Bitte gebe nun den Betrag ein den du überweisen willst!", "Überweisen", "Abbrechen");
    }
    else
    {
    SendClientMessage(playerid, Rot, "Info:"COLW" Dieser Spieler ist nicht Online!");
    return 1;
    }
    return 1;
    }
    }


    Kann mir vllt. einer helfen? Wäre sehr dankbar für :(