stock SaveUser(id, save_type)
{
if(Tmp_P[id][Registered] != true) return 0;
new query[500], DBResult:res;
switch(save_type)
{
case SAVE_TYPE_MINING:
{
format(query, 500,
"SELECT * FROM `MINING` WHERE `USERNAME` = '%s' ", pname(id) );
res = db_query(Server, query);
if(db_num_rows(res))
{
format(query, 500,
"UPDATE MINING SET ORE='%d', COPPER='%d', TIN='%d', ORE_CONTAINER='%d', COPPER_CONTAINER='%d', TIN_CONTAINER='%d', \
TOOL='%d', MININGXP='%d' WHERE `USERNAME` = '%s' ",
M[id][Metals][METAL_ORE], M[id][Metals][METAL_COPPER], M[id][Metals][METAL_TIN], M[id][Metal_Containers][METAL_ORE],
M[id][Metal_Containers][METAL_COPPER], M[id][Metal_Containers][METAL_TIN], M[id][Tool], M[id][Mining_XP], DB_Escape(pname(id)) );
db_query(Server, query);
}
else return db_free_result(res);
}
case SAVE_TYPE_TIMING:
{
format(query, 500,
"SELECT * FROM `TIME_STATS` WHERE `USERNAME` = '%s' ", pname(id) );
res = db_query(Server, query);
if(db_num_rows(res))
{
db_free_result(res);
format(query, 500,
"UPDATE TIME_STATS SET TIMES_WEEDED='%d',TIMES_MINED='%d',TIMES_FISHED='%d',TIMES_PUNISHED='%d',HOURS_PLAYED='%d',MINUTES_PLAYED='%d',SECONDS_PLAYED='%d',TIMES_PLAYED='%d' WHERE `USERNAME`='%s'",
Time_P[id][Times_Weeded], Time_P[id][Times_Mined], Time_P[id][Times_Fished],
Time_P[id][Times_Punished], Time_P[id][Hours_played], Time_P[id][Minutes_played], Time_P[id][Seconds_played], Time_P[id][Times_played], pname(id) );
db_query(Server, query);
}
else return db_free_result(res);
}
case SAVE_TYPE_MAIN:
{
format(query, 500,
"SELECT * FROM `MAIN_PSTATS` WHERE `USERNAME` = '%s' ", pname(id) );
res = db_query(Server, query);
if(db_num_rows(res))
{
db_free_result(res);
format(query, 500,
"UPDATE MAIN_STATS SET KILLS='%d',DEATHS='%d',XP='%d',MONEY='%d',BALANCE='%d' WHERE `USERNAME`='%s' ",
P[id][Kills], P[id][Deaths], P[id][XP], P[id][Money], P[id][Balance],
id );
res = db_query(Server, query);
if(!res) printf("query failed");
}
}
case SAVE_TYPE_SERVERSTATS:
{
format(query, 500,
"SELECT * FROM `SERVER_STATS` WHERE `USERNAME`='%s'", pname(id) );
res = db_query(Server, query);
if(db_num_rows(res))
{
db_free_result(res);
format(query, 500,
"UPDATE SERVER_STATS SET PASSWORD='%s',IP='%s',ADMINLEVEL='%d',VIPLEVEL='%d',DONATED='%f',REG_YEAR='%d',REG_MONTH='%d',REG_DAY='%d' WHERE `USERNAME`='%s'",
DB_Escape(Server_P[id][Password]), DB_Escape(Server_P[id][IP]), Server_P[id][AdminLevel], Server_P[id][VIPLevel], Server_P[id][Donated],
Server_P[id][Reg_year], Server_P[id][Reg_month], Server_P[id][Reg_date], pname(id) );
db_query(Server, query);
}
}
case SAVE_TYPE_OWNERSHIP:
{
format(query, 500,
"SELECT * FROM `MAIN_STATS` WHERE `USERNAME`='%s'", pname(id) );
res = db_query(Server, query);
if(db_num_rows(res))
{
db_free_result(res);
format(query, 500,
"UPDATE OWNERSHIP_STATS SET CAR1='%d',CAR2='%d',HOUSE='%d' WHERE `USERNAME`='%s'",
Owner_P[id][Car][0], Owner_P[id][Car][1], Owner_P[id][House], DB_Escape( pname(id) )
);
db_query(Server, query);
}
}
case SAVE_TYPE_INVENTORY:
{
format(query, 500,
"SELECT * FROM `MAIN_STATS` WHERE `USERNAME`='%s'", pname(id) );
res = db_query(Server, query);
if(db_num_rows(res))
{
db_free_result(res);
format(query, 500,
"UPDATE INVENTORY_STATS SET WEED='%d',SEEDS='%d',FISHBAIT='%d',TUNA='%d',SNAPPER='%d',NEEDLEFISH='%d',FERTILIZIERS='%d' WHERE `USERNAME`='%s'",
Invent_P[id][Weed], Invent_P[id][Seeds], Invent_P[id][Fishbait], Invent_P[id][Fishes][FISH_TUNA],
Invent_P[id][Fishes][FISH_SNAPPER], Invent_P[id][Fishes][FISH_NEEDLEFISH], Invent_P[id][Fertilizers] );
db_query(Server, query);
}
}
case SAVE_TYPE_NOTIFICATIONS:
{
format(query, 500,
"SELECT * FROM `MAIN_STATS` WHERE `USERNAME`='%s'", pname(id) );
res = db_query(Server, query);
if(db_num_rows(res))
{
db_free_result(res);
format(query, 500,
"UPDATE NOTIFY_STATS SET JOINLEAVE='%d',SPREES='%d',CAPTURES='%d',ADMINS='%d',PRVTNEWS='%d' WHERE `USERNAME`='%s'",
Notify_P[id][Join_Leave_News], Notify_P[id][Spree_News],
Notify_P[id][Captures_News], Notify_P[id][Admin_News],
Notify_P[id][Prvt_News], pname(id)
);
db_query(Server, query);
}
}
}
return 1;
}
1. Could you please post the printed values for the query variable for some of them.
2. May sound like a stupid question, but have you used db_open? 3. Is it actually reaching the queries? Use print around the queries and see if that area of code is being printed ![]() 4. Try taking out the ' and ' around the numerical values. This may be causing issues if the fields are integers in the database. |
[16:05:05] UPDATE MINING SET ORE='0', COPPER='0', TIN='0', ORE_CONTAINER='0', COPPER_CONTAINER='0', TIN_CONTAINER='0', TOOL='0', MININGXP='0' WHERE `USERNAME` = '[COD5]Gangs' [16:05:05] UPDATE TIME_STATS SET TIMES_WEEDED='0',TIMES_MINED='0',TIMES_FISHED='0', TIMES_PUNISHED='0',HOURS_PLAYED='0',MINUTES_PLAYED ='0',SECONDS_PLAYED='0',TIMES_PLAYED='0' WHERE `USERNAME`='[COD5]Gangs' [16:05:05] UPDATE MAIN_PSTATS SET KILLS='0',DEATHS='0',XP='0',MONEY='55000',BALANCE= '0' WHERE `USERNAME`='[COD5]Gangs' [16:05:05] UPDATE SERVER_STATS SET PASSWORD='nAn',IP='nill',ADMINLEVEL='0',VIPLEVEL=' 0',DONATED='0.000000',REG_YEAR='2013',REG_MONTH='5 ',REG_DAY='12' WHERE `USERNAME`='[COD5]Gangs' [16:05:05] UPDATE OWNERSHIP_STATS SET CAR1='9999',CAR2='9999',HOUSE='9999' WHERE `USERNAME`='[COD5]Gangs' [16:05:05] UPDATE INVENTORY_STATS SET WEED='0',SEEDS='0',FISHBAIT='0',TUNA='0',SNAPPER=' 0',NEEDLEFISH='0',FERTILIZIERS='0' WHERE `USERNAME`='[COD5]Gangs' [16:05:06] UPDATE NOTIFY_STATS SET JOINLEAVE='1',SPREES='0',CAPTURES='0',ADMINS='0' WHERE `USERNAME`='[COD5]Gangs' |