Banliste (MySQL)

  • Banliste (MySQL)

    Guten Tag,

    ich hab einen CMD der eigentlich alle Spieler anzeigen lassen sollte die gebannt sind jedoch zeigt der Dialog nur alle Spieler an die nicht gebannt sind. (Weil der Status abgefragt wird von der Person die den CMD genutzt hat), ich weiß nicht wie ich das ändern soll :s

    Und ich möchte das man auf die Spieler klicken kann und dann dort kommt (z.b.) "Name: %s\tBangrund: %s\tBanadmin: %s", SpielerName(playerid), SpielerInfo[playerid][pBanGrund], SpielerInfo[playerid][pBanAdmin]

    Nur ich wüsste nicht wie ich das mache das wen man in der liste auf den Spieler klickt das das kommt ...

    Code:
    [pwn]ocmd:banlist(playerid, params[])
    {
    if(!IsPlayerInGame(playerid))
    {
    return false;
    }
    if(SpielerInfo[playerid][pAdmin] >= 4)
    {
    new query[128], plName[16], str[1028], str2[96];
    format(query, sizeof(query), "SELECT `Name` FROM `accounts` WHERE `Gebannt` = '%d'", SpielerInfo[playerid][pGebannt]);
    mysql_query(query);
    mysql_store_result();
    while(mysql_fetch_row_format(query))
    {
    mysql_fetch_field_row(plName, "Name");
    format(str2, sizeof(str2), "Name: %s\n", plName);
    strcat(str, str2);
    }
    mysql_free_result();
    ShowPlayerDialog(playerid, DIALOG_BANNLIST, DIALOG_STYLE_MSGBOX, "Bannliste", str, "schließen", "");
    }
    return 1;
    }[/pwn]

    MfG
  • Nun überlege mal Warum? ^^

    mysql_fetch_field_row(plName, "Name");

    hier wird der Name aus der MySQL Datenbank ausgelesen aber nicht ob der Spieler Gebannt auf 1 stehen hat ^^
    Ich weiß nicht genau wie es geht aber ich würde dir raten auch abzufragen ob die Namen auch Gebannt 1 stehen habe ^^

    Grüße,
    Phoenix
    [tabmenu][tab='Meine Forenstyles']
    Blue Style: HIER [/tabmenu]

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Phoenix ()

  • Versuchs mal So

    [pwn]
    ocmd:banlist(playerid, params[])
    {
    if(!IsPlayerInGame(playerid))
    {
    return false;
    }
    if(SpielerInfo[playerid][pAdmin] >= 4)
    {
    new query[128], plName[16], str[1028], str2[96];
    format(query, sizeof(query), "SELECT `Name` FROM `accounts` WHERE `Gebannt` = '1'");
    mysql_query(query);
    mysql_store_result();
    while(mysql_fetch_row_format(query))
    {
    mysql_fetch_field_row(plName, "Name");
    format(str2, sizeof(str2), "Name: %s\n", plName);
    strcat(str, str2);
    }
    mysql_free_result();
    ShowPlayerDialog(playerid, DIALOG_BANNLIST, DIALOG_STYLE_MSGBOX, "Bannliste", str, "schließen", "");
    }
    return 1;
    }
    [/pwn]
  • okay danke, habs nun so:
    [pwn]ocmd:banlist(playerid, params[])
    {
    if(!IsPlayerInGame(playerid))
    {
    return false;
    }
    if(SpielerInfo[playerid][pAdmin] >= 4)
    {
    new query[128], plName[16], grund[60], admName[16], str[1028], str2[96];
    format(query, sizeof(query), "SELECT `Name`, `BanGrund`, `BanAdmin` FROM `accounts` WHERE `Gebannt` = '1'");
    mysql_query(query);
    mysql_store_result();
    while(mysql_fetch_row_format(query))
    {
    mysql_fetch_field_row(plName, "Name");
    mysql_fetch_field_row(grund, "BanGrund");
    mysql_fetch_field_row(admName, "BanAdmin");
    format(str2, sizeof(str2), "Name: %s\tGrund: %s\tVon: %s\n", plName, grund, admName);
    strcat(str, str2);
    }
    mysql_free_result();
    ShowPlayerDialog(playerid, DIALOG_BANNLIST, DIALOG_STYLE_MSGBOX, "Bannliste", str, "schließen", "");
    }
    return 1;
    }[/pwn]
    Jedoch möchte ich es so haben das es ein "List" Dialog ist und das wen man auf den Spieler klickt erst dann den Bangrund erfährt und von wem der Spieler gebannt wurde, wie geht das?