elit írta: Működik köszönöm!
Egyébként, így definiálva egyszerűbb a szerkesztés, az első sorba tudod.
#define JOG "ADMIN_LEVEL_A" new const SQL_INFO[][] = { "127.0.0.1", // HOST "username", // USERNAME "password", // PASSWORD "database" // DATABASE } new Handle:g_SqlTuple; new valtozo[33] new name[33][32] public plugin_cfg() { new Query[512]; g_SqlTuple = SQL_MakeDbTuple(SQL_INFO[0],SQL_INFO[1],SQL_INFO[2],SQL_INFO[3]) formatex(Query, charsmax(Query), "CREATE TABLE IF NOT EXISTS `tabla_neve` (`username` varchar(32) NOT NULL,`valami_ertek` 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 client_putinserver(id) { if(!is_user_bot(id) && get_user_flags(id) & JOG) { get_user_name(id, name[id], charsmax(name)) load(id) } } public load(id) { new Query[512], Data[1] Data[0] = id formatex(Query, charsmax(Query), "SELECT * FROM `tabla_neve` WHERE username = ^"%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 && get_user_flags(id) & JOG) { // Ittis valtozo[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "valami_ertek")) } else { save(id) } } } public save(id) { if(get_user_flags(id) & JOG) // ITTIS { new text[512]; formatex(text, charsmax(text), "INSERT INTO `tabla_neve` (`username`, `valami_ertek`) VALUES (^"%s^", ^"0^");", name[id]) SQL_ThreadQuery(g_SqlTuple, "QuerySetData", text) } } 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) { if(get_user_flags(id) & JOG) // ITTIS { new text[512]; formatex(text, charsmax(text), "UPDATE `tabla_neve` SET valami_ertek = ^"%i^" WHERE username = ^"%s^";", valtozo[id], name[id]) SQL_ThreadQuery(g_SqlTuple, "QuerySetData", text) } } public client_disconnect(id) { if(!is_user_bot(id)) { update(id) } valtozo[id] = 0 copy(name[id], charsmax(name[]), "") } public plugin_end() { SQL_FreeHandle(g_SqlTuple) }
|