MySQL doesn't load or save
#1

pawn Код:
stock LoadItems(playerid)
{
    new query[512];
    format(query,sizeof(query),"SELECT * FROM `items` WHERE `username` = '%s'",Name);
    mysql_query(query);
    mysql_store_result();
    while(mysql_fetch_row_format(query,"|"))
    {
        sscanf(query,"p<|>e<dsdddddddddddd>",PlayerItems[playerid]);
        mysql_free_result();
    }
    return 1;
}
stock SaveItems(playerid)
{
    new query[512];
    format(query,sizeof(query),"UPDATE `items` SET Mseeds = %d, Marijuana = %d, Phone = %d,PhoneNumber = %d,Watch = %d,Beer = %d,Wine = %d,Cigarettes = %d,Lighter = %d,FishRod = %d, \
    Bait = %d, FishBag = %d WHERE `username` = '%s'"
,
    PlayerItems[playerid][Mseeds],PlayerItems[playerid][Marijuana],
    PlayerItems[playerid][Phone],PlayerItems[playerid][PhoneNumber],PlayerItems[playerid][Watch],
    PlayerItems[playerid][Beer],PlayerItems[playerid][Wine],PlayerItems[playerid][Cigarettes],
    PlayerItems[playerid][Lighter],PlayerItems[playerid][FishRod],PlayerItems[playerid][Bait],
    PlayerItems[playerid][FishBag],Name);
    mysql_query(query);
    return 1;
}
These are my functions. I checked the order,of my enum and mysql database,they are identical.Logs say it loaded:
pawn Код:
[16:13:40] CMySQLHandler::FetchRow() - Return: 1|Enrico_Mancini|520|5|0|0|0|0|0|20|1|0|0|0
[16:13:40] >> mysql_free_result( Connection handle: 1 )
[16:13:40] CMySQLHandler::FreeResult() - Result was successfully free'd.
[16:13:40] >> mysql_fetch_row_format( Connection handle: 1 )
[16:13:40] CMySQLHandler::FetchRow() - You cannot call this function now. (Reason: Empty Result)
But when i use this command:
pawn Код:
CMD:smoke(playerid,params[])
{
    if(PlayerItems[playerid][Cigarettes]>0 && PlayerItems[playerid][Lighter]>0)
    {
        new string[126];
        format(string,sizeof(string),"*%s isitrauke cigarete is pakelio,ir ja prisidega",Name);
        ProxDetector(30.0,playerid,string,0x9122FFCC);
        SetPlayerSpecialAction(playerid,21);
        SetTimerEx("Smoke",120000,false,"i",playerid);
        PlayerItems[playerid][Cigarettes]=PlayerItems[playerid][Cigarettes]-1;
    }
    else SendClientMessage(playerid,0xFF0000FF,"Neturi cigareciu arba ziebtuvelio");
    return 1;
}
It still says i don't have the required items. And i just can't find the problem,please help
Reply
#2

Check if the database has variable Cigarettes correctly in your table, not cigarettes, not Cigaretes, or not Cigarettess.

Case sensitive, and "Cigarettes"
Reply
#3

Only free the result after the loop. Not inside of it.
Reply
#4

Batonsa,i checked that for sure!

Vince,thanks,i'll see if that helps
Reply
#5

Still,the problem exists. I set some items in my database,then connect. The log says it loaded those items,but i cant use them! Please help!

EDIT. And on disconnect it saves 0's to the database again.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)