Getting Saved Server Data (MySQL)
#1

pawn Код:
new IntRate;
new TaxRate;

stock GetInformation(info[], value)
{
    new query[128];
    format(query, sizeof(query),"SELECT * FROM `information` WHERE `info` = '%s'", info);
    mysql_query(query);
    mysql_store_result();

    while(mysql_fetch_row_format(query,"|"))
    {
        new tablevalue[16];
        mysql_fetch_field_row(tablevalue, "value"); value = strval(tablevalue);
    }
    mysql_free_result();
   
    return value;
}

public OnGameModeInit()
{
    GetInformation("interest", IntRate);
    GetInformation("tax", TaxRate);
       
        return 1;
}

//debug command
CMD:rates(playerid, params[])
{

    new string[128];
    format(string, 128, "Interest: %d%s", IntRate, "%%");
    SendClientMessage(playerid, COLOR_WHITE, string);
    format(string, 128, "Tax: %d%s", TaxRate, "%%");
    SendClientMessage(playerid, COLOR_WHITE, string);
   
    return 1;
}
It's returning 0 for both rates. What's wrong?
Reply
#2

You've gotta do this in OnGameModeInit:

pawn Код:
IntRate = GetInformation("interest");
TaxRate = GetInformation("tax");
You also have to remove the value parameter for GetInformation, and create a new var called value inside of it.

Your code would look like this:

pawn Код:
new IntRate;
new TaxRate;

stock GetInformation(info[])
{
    new query[128], value;
    format(query, sizeof(query),"SELECT * FROM `information` WHERE `info` = '%s'", info);
    mysql_query(query);
    mysql_store_result();

    while(mysql_fetch_row_format(query,"|"))
    {
        new tablevalue[16];
        mysql_fetch_field_row(tablevalue, "value"); value = strval(tablevalue);
    }
    mysql_free_result();
   
    return value;
}

public OnGameModeInit()
{
    IntRate = GetInformation("interest");
    TaxRate = GetInformation("tax");
    return 1;
}

//debug command
CMD:rates(playerid, params[])
{
    new string[128];
    format(string, 128, "Interest: %d%%", IntRate);
    SendClientMessage(playerid, COLOR_WHITE, string);
    format(string, 128, "Tax: %d%%", TaxRate);
    SendClientMessage(playerid, COLOR_WHITE, string);
    return 1;
}
Reply
#3

Thank you.
Reply
#4

EDIT: Moved to new topic
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)