saving user coordinates doesn't work mysql
#1

Hello all i have litle problem.everything works fine but except player cord saving i have set them to floats in script and db but with no resuts.

my enum

Code:
enum PlayerInfo
{
    ID,
    Nick[24], 
    pAdmin, 
    pMoney,
    pKills, 
    pDeaths, 
    pScore, 
    IP[16], 
	Float:pLastX,
	Float:pLastY,
	Float:pLastZ,
    pInt,
    pSkin,
        Logged,
        IsRegistered 
};
of corse saving query

Code:
SavePlayer(playerid)
{
    if(pInfo[playerid][Logged] == 1)
    {
    	new Query[500];
    	new Float:X, Float:Y, Float:Z;
		GetPlayerPos(playerid, X, Y, Z);
        format(Query, 500, "UPDATE `playerdata` SET `admin` = '%d', `score` = '%d', `money` = '%d', `kills` = '%d', `deaths` = '%d',`x` = '%f',`y` = '%f',`z` = '%f',`pInt` = '%d',`pskin` = '%d' WHERE `id` = '%d' LIMIT 1",
        pInfo[playerid][pAdmin],
        pInfo[playerid][pScore],
        pInfo[playerid][pMoney],
        pInfo[playerid][pKills],
        pInfo[playerid][pDeaths],
        pInfo[playerid][pLastX],
        pInfo[playerid][pLastY],
        pInfo[playerid][pLastZ],
        pInfo[playerid][pInt],
        pInfo[playerid][pSkin],
        pInfo[playerid][ID]);
        mysql_query(Query);
    }
}
Reply
#2

Use minimum 3 character ( i have tested, it will not work with single character)
x = posx
y = posy
z = posz
Code:
SavePlayer(playerid)
{
    if(pInfo[playerid][Logged] == 1)
    {
    	new Query[500];
    	new Float:X, Float:Y, Float:Z;
		GetPlayerPos(playerid, X, Y, Z);
        format(Query, 500, "UPDATE `playerdata` SET `admin` = '%d', `score` = '%d', `money` = '%d', `kills` = '%d', `deaths` = '%d',`posx` = '%f',`posy` = '%f',`posz` = '%f',`pInt` = '%d',`pskin` = '%d' WHERE `id` = '%d' LIMIT 1",
        pInfo[playerid][pAdmin],
        pInfo[playerid][pScore],
        pInfo[playerid][pMoney],
        pInfo[playerid][pKills],
        pInfo[playerid][pDeaths],
        pInfo[playerid][pLastX],
        pInfo[playerid][pLastY],
        pInfo[playerid][pLastZ],
        pInfo[playerid][pInt],
        pInfo[playerid][pSkin],
        pInfo[playerid][ID]);
        mysql_query(Query);
    }
}
Reply
#3

doesn't work it saves only 1 , 1 , 1
http://prntscr.com/32fqoh
Reply
#4

pawn Code:
SavePlayer(playerid)
{
    if(pInfo[playerid][Logged] == 1)
    {
        new Query[500];
        GetPlayerPos(playerid, pInfo[playerid][pLastX], pInfo[playerid][pLastY], pInfo[playerid][pLastZ]);
        format(Query, sizeof(Query), "UPDATE `playerdata` SET `admin` = '%d', `score` = '%d', `money` = '%d', `kills` = '%d', `deaths` = '%d',`posx` = '%f',`posy` = '%f',`posz` = '%f',`pInt` = '%d',`pskin` = '%d' WHERE `id` = '%d' LIMIT 1",
        pInfo[playerid][pAdmin],
        pInfo[playerid][pScore],
        pInfo[playerid][pMoney],
        pInfo[playerid][pKills],
        pInfo[playerid][pDeaths],
        pInfo[playerid][pLastX],
        pInfo[playerid][pLastY],
        pInfo[playerid][pLastZ],
        pInfo[playerid][pInt],
        pInfo[playerid][pSkin],
        pInfo[playerid][ID]);
        mysql_query(Query);
    }
}
Reply
#5

Now Try it will work
Code:
SavePlayer(playerid)
{
    if(pInfo[playerid][Logged] == 1)
    {
    	new Query[500];
    	new Float:X, Float:Y, Float:Z;
		GetPlayerPos(playerid, X, Y, Z);
        format(Query, 500, "UPDATE `playerdata` SET `admin` = '%d', `score` = '%d', `money` = '%d', `kills` = '%d', `deaths` = '%d',`posx` = '%f',`posy` = '%f',`posz` = '%f',`pInt` = '%d',`pskin` = '%d' WHERE `id` = '%d' LIMIT 1",
        pInfo[playerid][pAdmin],
        pInfo[playerid][pScore],
        pInfo[playerid][pMoney],
        pInfo[playerid][pKills],
        pInfo[playerid][pDeaths],
        X,
        Y,
        Z,
        pInfo[playerid][pInt],
        pInfo[playerid][pSkin],
        pInfo[playerid][ID]);
        mysql_query(Query);
    }
}
Reply
#6

thankyou iZN it worked like a charm
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)