Mysql banned Tabelle

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
  • Ich habe nun eine Tabelle Namens Bannedplayers,
    nun möchte ich es so machen, das wenn man jemand bannt das der Account die Tabelle gespeichert wird, und bei jedem Login soll halt überprüft werden ob er in der Tabelle steht.


    Ich weiß nicht wie ich anfangen soll.
    Arbeite mit dem R8 Plugin

  • Du erstellst eine neue SPalte mit dem jeweiligen wert am besten die Eigenschaft integer.
    Dann kannst du dann mit der funktion cache_get_row_int beim auslesen arbeiten und den ausgelesenen wert direkt abfragen.
    Zum Thema Updaten also solltest du den Spieler updaten einfach den jeweiligen Eintrag aktualisieren mit dem SQL -befehl UPDATE.

  • Du erstellst eine neue SPalte mit dem jeweiligen wert am besten die Eigenschaft integer.
    Dann kannst du dann mit der funktion cache_get_row_int beim auslesen arbeiten und den ausgelesenen wert direkt abfragen.
    Zum Thema Updaten also solltest du den Spieler updaten einfach den jeweiligen Eintrag aktualisieren mit dem SQL -befehl UPDATE.


    Aber möchte eine eigene Tabelle für die Banns damit es übersichtlicher ist


  • format(query,sizeof(query),"INSERT INTO `bans` (`IP`,`Grund`,`Name`,`Admin`) VALUES ('%s','%s','%s','%s')",SpielerIP(pID),reason,SpielerName(pID),SpielerName(playerid)); //reason mit dem "grund" string wechseln

    wenn du es anders meinst, sag es ^^


    hier der spielerip stock

    stock SpielerIP(playerid)
    {
    new getip[16];
    GetPlayerIp(playerid,getip,sizeof(getip));
    return getip;
    }


    //e fail falscher stock :D



  • Werde gekickt obwohl nichts in der Tabelle steht:

    new query[256],rows,fields;
    format(query,sizeof(query),"SELECT * FROM bannedplayers WHERE Name='%s'",PlayerName(playerid));
    cache_get_data(rows,fields);
    if(rows)
    {
    SendClientMessage(playerid,ROT,"Gebannt");
    Kick(playerid);
    }

  • vielleicht hilft dir das hier weiter,

    new query[128];
    format(query,sizeof query,"SELECT * FROM accounts WHERE Name = '%s'",SpielerName(playerid));
    mysql_function_query(dbhandle,query,true,"OnPlayerCheck","d",playerid); //Ausgeben aller Daten vom jeweiligen Spieler
    forward OnPlayerCheck(playerid); //Forwarden unseres Callbacks
    public OnPlayerCheck(playerid) {
    new zeilen,felder; //Erstellen zweier Variabeln für die Zeilen und Felder
    cache_get_data(zeilen,felder); //Benutzen unsere Funktion um die Zeilen und Felder zu erhalten die oben im Query angefragt wurden
    if(!zeilen) { //Wenn es keine Zeilen gibt , d.h. der Spieler noch nicht registriert ist
    //Weiter Code ....
    }
    else { //Wenn es doch welche gibt, d.h. der Spieler ist schon registriert
    //Weiter Code hier
    }
    }

    quelle: [ SCRIPTING ] MySQL R7(+) - Cachefunktionen & Threaded Querys [UPDATED]


    einfach umändern