GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: HackFlux - 2015. Augusztus 25. - 22:42:20

Cím: MySQL lekérdezés.
Írta: HackFlux - 2015. Augusztus 25. - 22:42:20
Sziasztok! Megint segítségre lenne szükségem!
Írogatom a frakció rendszeremet és szeretnèk egy olyant csinàlni, hogy mondjuk egy /frakciotagok parancsal kimutassa nekem azt hogy kik vannak a frakciókban és azt is, hogy ki online meg ki offline. Előre is köszönöm a segítségetek!
Cím: MySQL lekérdezés.
Írta: Kovacs_Richard - 2015. Augusztus 26. - 09:45:40
így a 0-ból? elég nehezen tudnánk segíteni...
sql-t vagy valamit mellékelnél? vagy lemaradtam valamiről és tudnom kéne miben dolgozol? :)
Cím: MySQL lekérdezés.
Írta: HackFlux - 2015. Augusztus 27. - 22:23:35
Őőőőm, jelenleg így néz ki, de nemjó, mert csak az onlineokat írja ki...
 
 if(listitem == 0)
        {
            new query[128];
             mysql_format(MySQL, query, sizeof(query), \"SELECT * FROM `accountok` WHERE `Frakció` = \'%d\'\", Jatekos[playerid][Frakcio]);
             mysql_tquery(MySQL, query, \"FrakcioTagok\", \"d\", playerid);
      return 1;
        }

 
És:
forward FrakcioTagok(playerid);
public FrakcioTagok(playerid)
{
    new numrows = cache_get_row_count(MySQL);
    new username[MAX_PLAYER_NAME], string[128];
    if(numrows)
    {
         for(new i; i <numrows; i++)
         {
               cache_get_field_content(i, \"Név\", username, sizeof(username));
               new prang = cache_get_row_int(0, 13);
               if(ReturnUser(username)!= INVALID_PLAYER_ID)
      {
                   format(string, sizeof(string), \"Név: %s | Rang: %s\", username, Rangok[prang][2]);
                   return SendClientMessage(playerid, -1, string);
               }
               else
               {
                    format(string, sizeof(string), \"%s[OFFLINE]\", username);
                     SendClientMessage(playerid, -1, string);
      }
         }
    }
    return 1;
}

 

Dupla hozzászólás automatikusan összefûzve. ( 2015. Augusztus 27. - 23:17:52 )

És még ez. :D
 
stock ReturnUser(text[], playerid = INVALID_PLAYER_ID)
{
#pragma unused playerid
    new pos = 0;
    while (text[pos] < 0x21)
    {
        if (text[pos] == 0) return INVALID_PLAYER_ID;
        pos++;
    }
    new userid = INVALID_PLAYER_ID;
    if (IsNumeric(text[pos]))
    {
        userid = strval(text[pos]);
        if (userid >=0 && userid < MAX_PLAYERS)
        {
            if(!IsPlayerConnected(userid))
            userid = INVALID_PLAYER_ID;
            else return userid;
        }
    }
    return 1;
}
stock IsNumeric(const string[])
{
    new i;
    while(string != \'\\0\') //end of string
    {
        if (string > \'9\' || string < \'0\'){return 0;}
        i++;
    }
    return 1;
}
Cím: MySQL lekérdezés.
Írta: Kovacs_Richard - 2015. Augusztus 28. - 20:14:35
return SendClientMessage(playerid, -1, string);

 
ez szerinted biztos jó így? 1 online-t ír ki gondolom, ugye?
Cím: MySQL lekérdezés.
Írta: HackFlux - 2015. Augusztus 29. - 09:20:11
Hát csak úgy próbáltam, hogy csak én vagyok fennt, szóval nemtudom.
Cím: MySQL lekérdezés.
Írta: Kovacs_Richard - 2015. Augusztus 29. - 09:36:04
Idézetet írta: HackFlux date=1440832811\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"57468\" data-ipsquote-contentclass=\"forums_Topic
Hát csak úgy próbáltam, hogy csak én vagyok fennt, szóval nemtudom.
 
ez biztosan nem jó :) mivel a return után nem fut tovább a ciklus, sőt a függvény további része sem :)
Cím: MySQL lekérdezés.
Írta: HackFlux - 2015. Augusztus 29. - 22:39:34
És hogyan tudnám megoldani hogy jó legyen ?
Cím: MySQL lekérdezés.
Írta: Kovacs_Richard - 2015. Augusztus 29. - 23:03:42
vedd ki a return-t