OK I'm sorry for double post but I found my answer by looking at settask data parameter.
It should be done like this:
In DeathMsg event:
PHP Code:
get_user_name(killer, name, charsmax(name));
formatex(Query, 511, "SELECT * FROM points WHERE `username`='%s'", name);
SQL_ThreadQuery(g_SqlTuple, "QueryThread_SELECT", Query, name, charsmax(name));
In Handler:
PHP Code:
public QueryThread_SELECT(FailState, Handle:Query, Error[], Errcode, Data[], DataSize){
if(FailState == TQUERY_CONNECT_FAILED){
return set_fail_state("Couldn't connect to DB");
}else if(FailState == TQUERY_QUERY_FAILED){
return set_fail_state("Query failed");
}
if(SQL_NumResults(Query) < 1){
formatex(szquery, 511, "INSERT INTO `points` VALUES('%s', '+1')", Data);
SQL_ThreadQuery(g_SqlTuple, "FreeQueryHandler", szquery);
client_print(0, print_chat, "Insert for %s", Data);
}else if(SQL_NumResults(Query) == 1){
formatex(szquery, 511, "UPDATE `points` SET `coins` = `coins`+1 WHERE `username` = '%s'", Data);
SQL_ThreadQuery(g_SqlTuple, "FreeQueryHandler", szquery);
client_print(0, print_chat, "Update for %s", Data);
}
return PLUGIN_CONTINUE;
}
It works perfectly now...but if someone could do some improvements please reply..
Thanks
__________________