public plugin_cfg() { new Query[2048], Len; g_SqlTuple = SQL_MakeDbTuple(SQL_INFO[0],SQL_INFO[1],SQL_INFO[2],SQL_INFO[3]) Len += formatex(Query[Len], charsmax(Query), "CREATE TABLE IF NOT EXISTS `tabla_neve`") Len += formatex(Query[Len], charsmax(Query)-Len, "(`Nev` varchar(32) NOT NULL, ") Len += formatex(Query[Len], charsmax(Query)-Len, "`szint` int(11) NOT NULL,`id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY)") SQL_ThreadQuery(g_SqlTuple,"createTableThread", Query) } public createTableThread(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) { if(FailState == TQUERY_CONNECT_FAILED) set_fail_state("Nem tudtam csatlakozni az adatbazishoz."); else if(FailState == TQUERY_QUERY_FAILED) set_fail_state("Query Error"); if(Errcode) log_amx("Hibat dobtam: %s",Error); } public load(id) { new Query[1024], Data[1], Len; Data[0] = id Len += formatex(Query[Len], charsmax(Query), "SELECT * FROM `tabla_neve` ") Len += formatex(Query[Len], charsmax(Query)-Len, "SELECT * FROM `tabla_neve` WHERE Nev = ^"%s^";", name[id]) SQL_ThreadQuery(g_SqlTuple, "QuerySelectData", Query, Data, 1) } public QuerySelectData(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) { if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED) { log_amx("%s", Error) return } else { new id = Data[0]; if(SQL_NumRows(Query) > 0) { Szint[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "szint")) } else { save(id) } } } public save(id) { new Query[1024] new Len; Len += formatex(Query[Len], charsmax(Query), "INSERT INTO `tabla_neve` ") Len += formatex(Query[Len], charsmax(Query)-Len,"(`Nev`, ") Len += formatex(Query[Len], charsmax(Query)-Len,"`Szint` VALUES (`%s`, ", name[id]) Len += formatex(Query[Len], charsmax(Query)-Len, "^"0^");"); SQL_ThreadQuery(g_SqlTuple, "QuerySetData", Query) } public QuerySetData(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) { if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED) { log_amx("%s", Error) return } } public update(id) { new Query[1024] new Len; Len += formatex(Query[Len], charsmax(Query), "INSERT INTO `tabla_neve` ") Len += formatex(Query[Len], charsmax(Query)-Len, " SET szint = ^"%i^" WHERE Nev = ^"%s^"; ", Szint[id], name[id]) SQL_ThreadQuery(g_SqlTuple, "QuerySetData", Query) } public plugin_end() { SQL_FreeHandle(g_SqlTuple) } public client_putinserver(id) { if(!is_user_bot(id)) { get_user_name(id, name[id], charsmax(name)) load(id) } } public client_disconnect(id) { if(!is_user_bot(id)) { get_user_name(id, name[id], charsmax(name)) update(id) } copy(name[id], charsmax(name[]), "") }
|