Simple problem
#1

hey guys i have a /adminlist where it shows Name - AdminLevel - StaffPoints - HoursPlayed and it shows only if you have adminlevel 1 or bigger but it shows Players without admin , can some help what is wrong with this code ?

Код HTML:
CMD:adminlist(playerid, params[])
{
    if(gLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_ERROR, "Tu nu esti logat si nu poti sa folosesti aceasta comanda!");
    if(!IsManager(playerid)) return SendClientMessage(playerid, COLOR_ERROR, "Nu ai gradul necesar ca sa folosesti aceasta comanda!");
    const max_sort = 10;
    new string[500 + (MAX_PLAYER_NAME+1)*max_sort];
    new Cache:result = mysql_query(handle, "SELECT * FROM `players` WHERE `AdminLevel` + `StaffPoints` + `HoursPlayed` > 2 ORDER BY `AdminLevel` DESC LIMIT 10");
    new tmp = cache_num_rows();
    if(tmp)
    {
        strcat(string,"Nume\tAdmin Level\tPuncte Staff\tOre jucate\n");
        for(new i,a[11],c[11],h[11],n[MAX_PLAYER_NAME]; i<tmp; i++)
        {
            cache_get_field_content(i, "Name", n);
            cache_get_field_content(i, "AdminLevel", c);
            cache_get_field_content(i, "StaffPoints", a);
            cache_get_field_content(i, "HoursPlayed", h);
            format(string,sizeof(string),"%s%s\t%d\t%d\t%d\t%d\n",string,n,strval©,strval(a),strval(h));
        }
    }
    cache_delete(result);
    if(string[0] == EOS) return SendClientMessage(playerid, COLOR_ERROR, "Nici un admin in baza de date!");
    ShowPlayerDialog(playerid, 525242, DIALOG_STYLE_TABLIST_HEADERS, "Lista adminilor", string, "Iesi", "");
    return 1;
}
Reply
#2

PHP код:
CMD:adminlist(playeridparams[])
{
    if(
gLogged[playerid] == 0) return SendClientMessage(playeridCOLOR_ERROR"Tu nu esti logat si nu poti sa folosesti aceasta comanda!");
    if(!
IsManager(playerid)) return SendClientMessage(playeridCOLOR_ERROR"Nu ai gradul necesar ca sa folosesti aceasta comanda!");
    const 
max_sort 10;
    new 
string[500 + (MAX_PLAYER_NAME+1)*max_sort];
    new 
Cache:result mysql_query(handle"SELECT * FROM `players` WHERE `AdminLevel` + `StaffPoints` + `HoursPlayed` > 2 AND `AdminLevel` > 0 ORDER BY `AdminLevel` DESC LIMIT 10");
    new 
tmp cache_num_rows();
    if(
tmp)
    {
        
strcat(string,"Nume\tAdmin Level\tPuncte Staff\tOre jucate\n");
        for(new 
i,a[11],c[11],h[11],n[MAX_PLAYER_NAME]; i<tmpi++)
        {
            
cache_get_field_content(i"Name"n);
            
cache_get_field_content(i"AdminLevel"c);
            
cache_get_field_content(i"StaffPoints"a);
            
cache_get_field_content(i"HoursPlayed"h);
            
format(string,sizeof(string),"%s%s\t%d\t%d\t%d\t%d\n",string,n,strval(c),strval(a),strval(h));
        }
    }
    
cache_delete(result);
    if(
string[0] == EOS) return SendClientMessage(playeridCOLOR_ERROR"Nici un admin in baza de date!");
    
ShowPlayerDialog(playerid525242DIALOG_STYLE_TABLIST_HEADERS"Lista adminilor"string"Iesi""");
    return 
1;

I Only modify the query
PHP код:
SELECT FROM `playersWHERE `AdminLevel` + `StaffPoints` + `HoursPlayed` > AND `AdminLevel` > 0 ORDER BY `AdminLevelDESC LIMIT 10 
EDIT
or

PHP код:
SELECT FROM `playersWHERE `AdminLevel` + `StaffPoints` > AND `HoursPlayed` > 2 ORDER BY `AdminLevelDESC LIMIT 10 
or

PHP код:
SELECT FROM `playersWHERE `AdminLevel` > AND `StaffPoints` > AND `HoursPlayed` > 2 ORDER BY `AdminLevelDESC LIMIT 10 
I did not understand very well what you want to do, so you leave multiple queries to get what you want.
Reply
#3

...dude you can not use this code for everything

Do this:

PHP код:
CMD:adminlist(playeridparams[])
{
    if(
gLogged[playerid] == 0) return SendClientMessage(playeridCOLOR_ERROR"Tu nu esti logat si nu poti sa folosesti aceasta comanda!");
    if(!
IsManager(playerid)) return SendClientMessage(playeridCOLOR_ERROR"Nu ai gradul necesar ca sa folosesti aceasta comanda!");
    const 
max_sort 10;
    new 
string[42 + (MAX_PLAYER_NAME+25)*max_sort];
    new 
Cache:result mysql_query(handle"SELECT `Name`,`AdminLevel`,`StaffPoints`,`HoursPlayed` FROM `players` WHERE `AdminLevel` > 0 ORDER BY `AdminLevel` DESC");
    new 
tmp cache_num_rows();
    if(
tmp)
    {
        
strcat(string,"Nume\tAdmin Level\tPuncte Staff\tOre jucate\n");
        for(new 
i,a[11],c[11],h[11],n[MAX_PLAYER_NAME]; i<tmpi++)
        {
            
cache_get_field_content(i"Name"n);
            
cache_get_field_content(i"AdminLevel"c);
            
cache_get_field_content(i"StaffPoints"a);
            
cache_get_field_content(i"HoursPlayed"h);
            
format(string,sizeof(string),"%s%s\t%d\t%d\t%d\t%d\n",string,n,strval(c),strval(a),strval(h));
        }
    }
    
cache_delete(result);
    if(
string[0] == EOS) return SendClientMessage(playeridCOLOR_ERROR"Nici un admin in baza de date!");
    
ShowPlayerDialog(playerid525242DIALOG_STYLE_TABLIST_HEADERS"Lista adminilor"string"Iesi""");
    return 
1;

Reply
#4

thx both of you , it work in both mode's
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)