zcmd_+sscanf
#1

How would look zcmd sscanf command +

Код:
if (strcmp(cmd, "/check", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
			if (PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pTrial] >= 1)
			{
			    tmp = strtok(cmdtext, idx);
				if(!strlen(tmp))
				{
					SendClientMessage(playerid, COLOR_GRAD1, "{00FF00}Folosire:{FFFFFF} /check [playerid/numejucator]");
					return 1;
				}
    			giveplayerid = ReturnUser(tmp);
				if(IsPlayerConnected(giveplayerid))
				{
				    if(giveplayerid != INVALID_PLAYER_ID)
				    {
						ShowStats(playerid,giveplayerid);
					}
				}
				else
				{
				    new qstr[100], plastlogin[100], pip[100], result[100];
	 				format(qstr,100,"SELECT `LastLogin`,`IP` FROM `players` WHERE `username`='%s'",tmp);
					mysql_query(qstr);
					mysql_store_result();
					if(mysql_num_rows() != 0)
					{
						if(mysql_retrieve_row ())
						{
							mysql_fetch_field_row(result, "LastLogin"); strmid(plastlogin, result, 0, 255, 255);
							mysql_fetch_field_row(result, "IP"); strmid(pip, result, 0, 255, 255);
						}
	                    SendClientMessage(playerid, COLOR_WHITE, " ");
						format(string, sizeof(string), "{0066FF}Check: {FFFFFF}Ultima logare: %s | IP: %s", plastlogin, pip);
						SendClientMessage(playerid, COLOR_WHITE, string);
						SendClientMessage(playerid, COLOR_WHITE, " ");
						SendClientMessage(playerid, COLOR_GRAD1, "{0066FF}Check: {FFFFFF}Acel jucator nu este online. Datele importante au fost afisate mai sus.");
                    }
                    else return SendClientMessage(playerid, COLOR_WHITE, "{0066FF}Check: {FFFFFF}Nu este niciun jucator cu acel nume!");
					mysql_free_result();
				}
			}
			else
			{
				SendClientMessage(playerid, COLOR_GRAD1, "** Nu ai rangul administrativ necesar!");
			}
		}
		return 1;
	}
Reply
#2

Im not sure about all the lines since I cant understand your language so respond if there are problems.

pawn Код:
CMD:check(playerid,params[])
{
    new otherplayer;
    if(sscanf(params,"i",otherplayer))
        return SendClientMessage(playerid,COLOR_RED,"Usage: /check [playerid]");
       
    if(otherplayer == INVALID_PLAYER_ID)
        return SendClientMessage(playerid,COLOR_RED,"Player is not online, invalid player");
       
    if (PlayerInfo[playerid][pAdmin] >= 1 || PlayerInfo[playerid][pTrial] >= 1)
    {
        new qstr[100], plastlogin[100], pip[100], result[100];
        format(qstr,100,"SELECT `LastLogin`,`IP` FROM `players` WHERE `username`='%s'",tmp);
        mysql_query(qstr);
        mysql_store_result();
        if(mysql_num_rows() != 0)
        {
            if(mysql_retrieve_row ())
            {
                mysql_fetch_field_row(result, "LastLogin"); strmid(plastlogin, result, 0, 255, 255);
                mysql_fetch_field_row(result, "IP"); strmid(pip, result, 0, 255, 255);
            }
            SendClientMessage(playerid, COLOR_WHITE, " ");
            format(string, sizeof(string), "{0066FF}Check: {FFFFFF}Ultima logare: %s | IP: %s", plastlogin, pip);
            SendClientMessage(playerid, COLOR_WHITE, string);
            SendClientMessage(playerid, COLOR_WHITE, " ");
            SendClientMessage(playerid, COLOR_GRAD1, "{0066FF}Check: {FFFFFF}Acel jucator nu este online. Datele importante au fost afisate mai sus.");
        }
    }
    else return SendClientMessage(playerid, COLOR_WHITE, "You are not an administrator");
    mysql_free_result();
    return true;
}

EDIT: I forgot to add ShowStats. If you want to add that, just use it bellow
pawn Код:
SendClientMessage(playerid, COLOR_GRAD1, "{0066FF}Check: {FFFFFF}Acel jucator nu este online. Datele importante au fost afisate mai sus.");
ShowStats(playerid,otherplayer); //of however you use that func
Reply
#3

pawn Код:
CMD:check(playerid, cmdtext[])
{
    new giveplayerid;
    if(PlayerInfo[playerid][pAdmin] < 1 || PlayerInfo[playerid][pTrial] < 1) SendClientMessage(playerid, COLOR_GRAD1, "** Nu ai rangul administrativ necesar!");
    else if(sscanf(cmdtext, "u", giveplayerid)) SendClientMessage(playerid, COLOR_GRAD1, "{00FF00}Folosire:{FFFFFF} /check [playerid/numejucator]");
    else
    {
        if(0 <= giveplayerid < MAX_PLAYERS && IsPlayerConnected(giveplayerid)) ShowStats(playerid,giveplayerid);
        else
        {
            new qstr[100];
            format(qstr,sizeof(qstr),"SELECT `LastLogin`,`IP` FROM `players` WHERE `username`='%s' LIMIT 1",cmdtext); // add here mysql escape or change '%s' to '%q' if its samp 0.3.7 R2
            mysql_query(qstr);
            mysql_store_result();
            if(mysql_num_rows())
            {
                new result[100], plastlogin[25], pip[16];
                mysql_fetch_row(result);
                sscanf(result,"p<|>s[25]s[16]",plastlogin,pip);
                SendClientMessage(playerid, COLOR_WHITE, " ");
                format(string, sizeof(string), "{0066FF}Check: {FFFFFF}Ultima logare: %s | IP: %s", plastlogin, pip);
                SendClientMessage(playerid, COLOR_WHITE, string);
                SendClientMessage(playerid, COLOR_WHITE, " ");
                SendClientMessage(playerid, COLOR_GRAD1, "{0066FF}Check: {FFFFFF}Acel jucator nu este online. Datele importante au fost afisate mai sus.");
            }
            else SendClientMessage(playerid, COLOR_WHITE, "{0066FF}Check: {FFFFFF}Nu este niciun jucator cu acel nume!");
            mysql_free_result();
        }
    }
    return 1;
}
Reply
#4

A can you please pass on the r39-3 mysql command?
Reply
#5

Try

pawn Код:
forward ShowOfflineStats(playerid);
public ShowOfflineStats(playerid)
{
    if(!cache_num_rows()) SendClientMessage(playerid, COLOR_WHITE, "{0066FF}Check: {FFFFFF}Nu este niciun jucator cu acel nume!");
    else
    {
        new result[100], plastlogin[25], pip[16];
        cache_get_row(0, 0, result); // getting rowid 0 and field 0
        sscanf(result,"p<|>s[25]s[16]",plastlogin,pip);
        SendClientMessage(playerid, COLOR_WHITE, " ");
        format(string, sizeof(string), "{0066FF}Check: {FFFFFF}Ultima logare: %s | IP: %s", plastlogin, pip);
        SendClientMessage(playerid, COLOR_WHITE, string);
        SendClientMessage(playerid, COLOR_WHITE, " ");
        SendClientMessage(playerid, COLOR_GRAD1, "{0066FF}Check: {FFFFFF}Acel jucator nu este online. Datele importante au fost afisate mai sus.");
    }
    return 1;
}

CMD:check(playerid, cmdtext[])
{
    new giveplayerid;
    if(PlayerInfo[playerid][pAdmin] < 1 || PlayerInfo[playerid][pTrial] < 1) SendClientMessage(playerid, COLOR_GRAD1, "** Nu ai rangul administrativ necesar!");
    else if(!(2 < strlen(cmdtext) < MAX_PLAYER_NAME) || sscanf(cmdtext, "u", giveplayerid)) SendClientMessage(playerid, COLOR_GRAD1, "{00FF00}Folosire:{FFFFFF} /check [playerid/numejucator]");
    else
    {
        if(IsPlayerConnected(giveplayerid)) ShowStats(playerid,giveplayerid);
        else
        {
            new qstr[100];
            mysql_format(MySQL, qstr, sizeof(qstr), "SELECT `LastLogin`,`IP` FROM `players` WHERE `username`='%e' LIMIT 1",cmdtext);
            mysql_tquery(MySQL, qstr, "ShowOfflineStats", "d", playerid);
        }
    }
    return 1;
}
or old version

pawn Код:
CMD:check(playerid, cmdtext[])
{
    new giveplayerid;
    if(PlayerInfo[playerid][pAdmin] < 1 || PlayerInfo[playerid][pTrial] < 1) SendClientMessage(playerid, COLOR_GRAD1, "** Nu ai rangul administrativ necesar!");
    else if(!(2 < strlen(cmdtext) < MAX_PLAYER_NAME) || sscanf(cmdtext, "u", giveplayerid)) SendClientMessage(playerid, COLOR_GRAD1, "{00FF00}Folosire:{FFFFFF} /check [playerid/numejucator]");
    else
    {
        if(IsPlayerConnected(giveplayerid)) ShowStats(playerid,giveplayerid);
        else
        {
            new qstr[100],Cache:result;
            mysql_format(MySQL, qstr, sizeof(qstr), "SELECT `LastLogin`,`IP` FROM `players` WHERE `username`='%e' LIMIT 1",cmdtext);
            result = mysql_query(MySQL, qstr);
            if(cache_num_rows())
            {
                new result[100], plastlogin[25], pip[16];
                cache_get_row(0, 0, result);
                sscanf(result,"p<|>s[25]s[16]",plastlogin,pip);
                SendClientMessage(playerid, COLOR_WHITE, " ");
                format(string, sizeof(string), "{0066FF}Check: {FFFFFF}Ultima logare: %s | IP: %s", plastlogin, pip);
                SendClientMessage(playerid, COLOR_WHITE, string);
                SendClientMessage(playerid, COLOR_WHITE, " ");
                SendClientMessage(playerid, COLOR_GRAD1, "{0066FF}Check: {FFFFFF}Acel jucator nu este online. Datele importante au fost afisate mai sus.");
            }
            else SendClientMessage(playerid, COLOR_WHITE, "{0066FF}Check: {FFFFFF}Nu este niciun jucator cu acel nume!");
            cache_delete(result);
        }
    }
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)