MySQL/Script Problem

  • MySQL/Script Problem

    Moin,

    ich habe ein kleines Problem mit meinem Script/MySQL.



    Ich habe vor ein paar Wochen mein Script auf MySQL umgeschrieben, dafür habe ich dieses Tutorial verwendet: [ SCRIPTING ] MySQL (Installation, Zugriff, Einstellungen, Login & Register Beispiel)



    Nun, es funktioniert auch alles, doch teilweise werden bei einigen
    dingen (Level, Respektpunkte, Adminlevel, Supporterlevel, Warns, etc.)
    der Interger auf eine andere Zahl als gewollt gesetzt, oft auch ohne
    dass ich überhaupt etwas ändere. Meist sind es Zahlen wie 46, 50, 51 und
    ich weis nicht woran es liegt.



    Da ich nicht genau weis was ihr alles an Scriptzeilen braucht, werde ich
    erstmal garnichts bezüglich Scriptzeilen einfügen, sagt mir einfach was
    ihr braucht udn ich poste es.



    Gruß

    Manuel
  • Meinst du das hier?

    [pwn]stock SavePlayer(playerid)
    {
    if(!IsPlayerNPC(playerid))
    {
    if(SpielerInfo[playerid][login] == 1)
    {
    mysql_SetInt("accounts", "Level", SpielerInfo[playerid][pLevel], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Erfahrungspunkte", SpielerInfo[playerid][pExp], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Geld", bGetPlayerMoney(playerid), "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Adminlevel", SpielerInfo[playerid][Adminlevel], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Supporter", SpielerInfo[playerid][Supporter], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Leader", SpielerInfo[playerid][Leader], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Member", SpielerInfo[playerid][Member], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Fraktion", SpielerInfo[playerid][Fraktion], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Rang", SpielerInfo[playerid][Rang], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Perso", SpielerInfo[playerid][perso], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Job", SpielerInfo[playerid][pjob], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Skin", SpielerInfo[playerid][Skin], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "bankgeld", SpielerInfo[playerid][bankgeld], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "zeitseitpayday", SpielerInfo[playerid][pSincePayday], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "spielzeit", SpielerInfo[playerid][pPlaytime], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Fische", SpielerInfo[playerid][pFishes], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "AngelSkill", SpielerInfo[playerid][pFishSkill], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "GrößterFisch", SpielerInfo[playerid][pBiggestFish], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "SFPass", SpielerInfo[playerid][SFpass], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "LVPass", SpielerInfo[playerid][LVpass], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "BSPass", SpielerInfo[playerid][BSpass], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "JobGehalt", SpielerInfo[playerid][JobGehalt], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Gehalt", SpielerInfo[playerid][Gehalt], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "AGL-Antrag", SpielerInfo[playerid][arbeitslosengeldholt], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Drogen1", SpielerInfo[playerid][pDrogen1], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Drogen2", SpielerInfo[playerid][pDrogen2], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Drogenskill", SpielerInfo[playerid][pDrogenSkill], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Wanteds", SpielerInfo[playerid][Wanteds], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "pAuto", SpielerInfo[playerid][pAuto], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "pMotorrad", SpielerInfo[playerid][pMotorrad], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "pBoot", SpielerInfo[playerid][pBoot], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "pFlug", SpielerInfo[playerid][pFlug], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "pAngel", SpielerInfo[playerid][pAngel], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Ort", SpielerInfo[playerid][Ort], "Name", SpielerName(playerid));
    //mysql_SetInt("accounts", "Haus", SpielerInfo[playerid][Haus], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "FrakSperre", SpielerInfo[playerid][pFrakSperre], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Tot", SpielerInfo[playerid][pTot], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Gefängnis", SpielerInfo[playerid][pKnast], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Waffenschein", SpielerInfo[playerid][wschein], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Handynummer", SpielerInfo[playerid][Handynummer], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Handyakku", SpielerInfo[playerid][Akku], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Guthaben", SpielerInfo[playerid][Guthaben], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Handyvorhanden", SpielerInfo[playerid][Handy], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Geschlecht", SpielerInfo[playerid][Geschlecht], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "HatteTut", SpielerInfo[playerid][HatteTut], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Kredit", SpielerInfo[playerid][Kredit], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Monate", SpielerInfo[playerid][Monatsrate], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Lottonummer", SpielerInfo[playerid][lottonummer], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "SpielerWarn", SpielerInfo[playerid][pWarns], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Gangjail", SpielerInfo[playerid][pGangjail], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "ZahlID", SpielerInfo[playerid][ZahlID], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "SchildZahl", SpielerInfo[playerid][pFlug], "SchildZahl", SpielerName(playerid));
    mysql_SetInt("accounts", "BlacklistBallas", SpielerInfo[playerid][BlacklistBallas], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "BlacklistGrove", SpielerInfo[playerid][BlacklistGrove], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "BlacklistTriaden", SpielerInfo[playerid][BlacklistTriaden], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "BlacklistScarfo", SpielerInfo[playerid][BlacklistScarfo], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Kills", SpielerInfo[playerid][pKill], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Tode", SpielerInfo[playerid][pTodesanzahl], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "KDRate", SpielerInfo[playerid][pKD], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Materials", SpielerInfo[playerid][pWaffenpakete], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "rate", SpielerInfo[playerid][rate], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "SexSkill", SpielerInfo[playerid][pSexSkill], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Krankheit", SpielerInfo[playerid][Krankheit], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Jailtime", SpielerInfo[playerid][pJailTime], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Friedhof", SpielerInfo[playerid][pFriedhof], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "TotTime", SpielerInfo[playerid][pTotTimer], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Verbrechen", SpielerInfo[playerid][verbrechen], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Inventar", SpielerInfo[playerid][inventar], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Telbuch", SpielerInfo[playerid][Telbuch], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Kopfgeld", SpielerInfo[playerid][Kopfgeld], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "gekochterhamburger", SpielerInfo[playerid][gekochterhamburger], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "hamburger", SpielerInfo[playerid][hamburger], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "gekochterfisch", SpielerInfo[playerid][gekochterfisch], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Matsein", SpielerInfo[playerid][pWaffenpaketeein], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Cannaein", SpielerInfo[playerid][pDrogen1ein], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Opein", SpielerInfo[playerid][pDrogen2ein], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Dieb", SpielerInfo[playerid][DiebSkill], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "BlacklistLCN", SpielerInfo[playerid][BlacklistLCN], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "BlacklistBast", SpielerInfo[playerid][BlacklistBast], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "BlacklistBlack", SpielerInfo[playerid][BlacklistBlack], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Hausschluessel", SpielerInfo[playerid][Hausschluessel], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Hausbesitz", SpielerInfo[playerid][Hausbesitz], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "eingemietet", SpielerInfo[playerid][eingemietet], "Name", SpielerName(playerid));
    mysql_SetString("accounts", "email", SpielerInfo[playerid][email], "Name", SpielerName(playerid));
    mysql_SetInt("accounts", "Premium",SpielerInfo[playerid][Premium], "Name", SpielerName(playerid));
    mysql_SetString("accounts", "BLGrund",SpielerInfo[playerid][BLGrund], "Name", SpielerName(playerid));
    mysql_SetString("accounts", "LastIP", SpielerInfo[playerid][LastIP], "Name", SpielerName(playerid));
    }
    return 1;
    }
    return 1;
    }[/pwn][/email]
  • [pwn]ocmd:unban(playerid,params[])
    {
    new string[128], name[MAX_PLAYER_NAME];
    if(SpielerInfo[playerid][Adminlevel] < 3)
    {
    return SendClientMessage(playerid,COLOR_GRAD2,"Info: Du bist kein Admin!");
    }
    if(sscanf(params,"s[32]",name))
    {
    return SendClientMessage(playerid,COLOR_GRAD2,"FEHLER: /unban [Name]");
    }
    if(mysql_GetInt("accounts", "Banned", "Name", name) == 0)
    {
    return SendClientMessage(playerid,COLOR_GRAD2,"Dieser Spieler ist nicht gebannt.");
    }
    format(string,sizeof(string),"Info: Spieler %s wurde von Admin %s entbannt.",name,SpielerName(playerid));
    SendAdminMessage(COLOR_LIGHTBLUE,string);
    mysql_SetInt("accounts", "Banned", 0, "Name", name);
    SpielerInfo[playerid][Banned] = 0;
    WBB_UnBanUser(name);
    return 1;
    }[/pwn]

    [pwn] if(strcmp(cmd, "/ban", true) == 0)
    {
    new string[128];
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /ban [playerid] [grund].");
    return true;
    }
    new giveplayerid;
    new stringus[128];
    new stringtext[128];
    giveplayerid = ReturnUser(tmp);
    if(SpielerInfo[playerid][Adminlevel] >= 1)
    {
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /ban [playerid] [grund].");
    return true;
    }
    if(SpielerInfo[giveplayerid][Adminlevel] > SpielerInfo[playerid][Adminlevel])
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Du kannst diesen Spieler nicht bannen, da er ein höheres Adminlevel hat als du!");
    return true;
    }
    //format(string, sizeof(string), "AdmCmd: %s wurde von %s gebannt, Grund: %s (%d-%d-%d).", SpielerName(giveplayerid), SpielerName(playerid), (result),month,day,year);
    format(string, sizeof(string), "AdmCmd: %s wurde von %s gebannt, Grund: %s.", SpielerName(giveplayerid), SpielerName(playerid), (result));
    SendClientMessageToAll(COLOR_LIGHTRED, string);
    mysql_SetInt("accounts", "Banned", 1, "Name", SpielerName(giveplayerid));
    SpielerInfo[giveplayerid][Banned] = 1;
    WBB_BanUser(SpielerName(giveplayerid),(result));
    format(stringus,sizeof(stringus),"Ban von %s",SpielerName(giveplayerid));
    format(stringtext,sizeof(stringtext),"Art: Ban\nName: %s\nGrund: %s",SpielerName(giveplayerid),(result));
    WBB_AddPost (SpielerName(playerid) , 306 , stringus , stringtext);
    Kick(giveplayerid);
    return true;
    }
    }//not connected
    }
    else
    {
    format(string, sizeof(string), " %d ist kein aktiver Spieler.", giveplayerid);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    }
    }
    return true;
    }[/pwn]

    [pwn] if(strcmp(cmd, "/warn", true) == 0)
    {
    new string[128];
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Fehler: /warn [playerid] [grund].");
    return true;
    }
    new giveplayerid;
    giveplayerid = ReturnUser(tmp);
    if(SpielerInfo[playerid][Adminlevel] >= 1)
    {
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /warn [playerid] [grund].");
    return true;
    }
    if(SpielerInfo[giveplayerid][Adminlevel] > SpielerInfo[playerid][Adminlevel])
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Du kannst diesen Spieler nicht verwarnen, da er ein höheres Adminlevel hat als du!");
    return true;
    }
    SpielerInfo[giveplayerid][pWarns] += 1;
    if(SpielerInfo[giveplayerid][pWarns] >= 3)
    {
    new year, month,day;
    getdate(year, month, day);
    format(string, sizeof(string), "AdmCmd: %s wurde von %s gebannt, Grund: %s (%d-%d-%d).", SpielerName(giveplayerid), SpielerName(playerid), (result),month,day,year);
    format(string, sizeof(string), "AdmCmd: %s wurde von %s gebannt(hat 3 Warnungen), Grund: %s.", SpielerName(giveplayerid), SpielerName(playerid), (result));
    SendClientMessageToAll(COLOR_RED, string);
    WBB_BanUser(SpielerName(giveplayerid),(result));
    new stringus[128];
    new stringtext[128];
    format(stringus,sizeof(stringus),"Warn(Bann) von %s",SpielerName(giveplayerid));
    format(stringtext,sizeof(stringtext),"Art: Verwarnung\nName: %s\nGrund: %s",SpielerName(giveplayerid),(result));
    WBB_AddPost (SpielerName(playerid) , 306 , stringus , stringtext);
    mysql_SetInt("accounts", "Banned", 1, "Name", SpielerName(giveplayerid));
    SpielerInfo[giveplayerid][Banned] = 1;
    Kick(giveplayerid);
    return true;
    }
    format(string, sizeof(string), "Du hast %s gewarnt, Grund: %s.", SpielerName(giveplayerid), (result));
    SendClientMessage(playerid, COLOR_LIGHTRED, string);
    format(string, sizeof(string), "Du wurdest von %s verwarnt, Grund: %s.", SpielerName(playerid), (result));
    SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
    new stringus[128];
    new stringtext[128];
    format(stringus,sizeof(stringus),"Warn von %s",SpielerName(giveplayerid));
    format(stringtext,sizeof(stringtext),"Art: Verwarnung\nName: %s\nGrund: %s",SpielerName(giveplayerid),(result));
    WBB_AddPost (SpielerName(playerid) , 306 , stringus , stringtext);
    return true;
    }
    }
    return SendClientMessage(playerid,COLOR_GRAD2,"Diese ID gibt es nicht!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_GRAD2,"Du darfst diesen Befehl nicht nutzen!");
    }
    }
    return 1;
    }[/pwn]

    [pwn]public cheattimer()
    {
    for(new i = 0; i < GetMaxPlayers(); i++)
    {
    new string[128];
    if(SpielerInfo[Adminlevel] < 5)
    {
    if(SpielerInfo[i][Fraktion] == 15 || SpielerInfo[i][Fraktion] < 14)
    {
    if(SpielerInfo[i][login] == 1)
    {
    new W1 = GetPlayerWeapon(i);
    if(W1 == 9 || W1 == 16 || W1 == 17 || W1 == 18 || W1 == 32 || W1 == 35 || W1 == 36 || W1 == 37 || W1 == 38 || W1 == 39 || W1 == 40 || W1 == 44 || W1 == 45)
    {
    format(string,sizeof(string),"AdmCmd: %s wurde vom Anti-Cheat System gebannt, Grund: WaffenHack",SpielerName(i));
    SendClientMessageToAll(COLOR_LIGHTRED,string);
    mysql_SetInt("accounts", "Banned", 1, "Name", SpielerName(i));
    SpielerInfo[i][Banned] = 1;
    WBB_BanUser(SpielerName(i),"WaffenHack [[AntiCheat]]");
    new stringus[128];
    new stringtext[128];
    format(stringus,sizeof(stringus),"Ban von %s",SpielerName(i));
    format(stringtext,sizeof(stringtext),"Art: Ban (AntiCheat)\nName: %s\nGrund: WaffenHack (Waffe: %d)",SpielerName(i),W1);
    WBB_AddPost ( "AntiCheat" , 306 , stringus , stringtext , 0 , 0 , 0 , 1 , 0 , 0 , 0 );
    Kick(i);
    return 1;
    }
    }
    else
    {
    }
    }
    else
    {
    }
    }
    }
    return 1;
    }[/pwn]

    Hier mal mysql_SetInt Stock
    [pwn]stock mysql_SetInt(Table[], Field[], To, Where[], Where2[])
    {
    new query[128];
    mysql_real_escape_string(Table, Table);
    mysql_real_escape_string(Field, Field);
    mysql_real_escape_string(Where, Where);
    mysql_real_escape_string(Where2, Where2);
    format(query, 128, "UPDATE `%s` SET `%s` = '%d' WHERE `%s` = '%s'", Table, Field, To, Where, Where2);
    mysql_query(query);
    return true;
    }[/pwn]