Mindestens die Spalten "usr_name" als VARCHAR und "status" als INT. Können aber auch weitere Spalten verlangt sein, da ich den Code nicht kenne und den Server nicht erstellt habe, kann ich dir das nicht sagen.
Am besten du wendest dich an den Ersteller des Servers und fragst nach der Datenbank.
Danke, nun klappt Timeban nicht
forward checktimeban(playerid);
public checktimeban(playerid){
if(LogFilesJet == 1){
printf("checktimeban 1 | Name: %s", PlayerName(playerid));
}
new stringgdfg[256];
format(stringgdfg, sizeof(stringgdfg), "SELECT * FROM tb_outstanding WHERE usr_name LIKE '%s' AND status = '0' ORDER BY id ASC LIMIT 1", PlayerName(playerid));
mysql_function_query(Connection, stringgdfg, true, "CheckTimebans", "i", playerid);
}
if(strcmp(cmd, "/timeban", true) == 0 || strcmp(cmd, "/tb", true) == 0){
if(PlayerInfo[playerid][ALevel] == 500 || PlayerInfo[playerid][ALevel] == 600){
return 1;
}
if(PlayerInfo[playerid][Team] == 21) return 1;
if(PlayerInfo[playerid][ALevel] <= 1){ return 1;}
new name[256], tbl, tbt[64];
if(IsPlayerConnected(playerid)){
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)){
SendClientMessage(playerid, GREY, "Verwendung: /timeban [Spieler-ID/Teil des Namens] [Bannlänge] [Bannart s/i/h/d/w/m/y] [Grund]");
SendClientMessage(playerid, COLOR_RED, "s: Sekunden | i: Minuten | h: Stunden | d: Tage | w: Wochen | m: Monate | y: Jahre");
return 1;
}
giveplayerid = ReturnUser(tmp);
GetPlayerName(playerid, name, sizeof(name));
if(IsPlayerConnected(giveplayerid)){
if(giveplayerid != INVALID_PLAYER_ID){
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)){
SendClientMessage(playerid, GREY, "Verwendung: /timeban [Spieler-ID/Teil des Namens] [Bannlänge] [Bannart s/i/h/d/w/m/y] [Grund]");
SendClientMessage(playerid, COLOR_RED, "s: Sekunden | i: Minuten | h: Stunden | d: Tage | w: Wochen | m: Monate | y: Jahre");
return 1;
}
tbl = strval(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)){
SendClientMessage(playerid, GREY, "Verwendung: /timeban [Spieler-ID/Teil des Namens] [Bannlänge] [Bannart s/i/h/d/w/m/y] [Grund]");
SendClientMessage(playerid, COLOR_RED, "s: Sekunden | i: Minuten | h: Stunden | d: Tage | w: Wochen | m: Monate | y: Jahre");
return 1;
}
format(tbt, sizeof(tbt), "%s", tmp);
if(strcmp(tbt, "s", true) == 0 || strcmp(tbt, "i", true) == 0 || strcmp(tbt, "h", true) == 0 || strcmp(tbt, "d", true) == 0 || strcmp(tbt, "w", true) == 0 || strcmp(tbt, "m", true) == 0 || strcmp(tbt, "y", true) == 0){
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, name, sizeof(name));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' ')){
idx++;
}
new offset = idx;
new result[256];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))){
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result)){
SendClientMessage(playerid, GREY, "Verwendung: /timeban [Spieler-ID/Teil des Namens] [Bannlänge] [Bannart s/i/h/d/w/m/y] [Grund]");
SendClientMessage(playerid, COLOR_RED, "s: Sekunden | i: Minuten | h: Stunden | d: Tage | w: Wochen | m: Monate | y: Jahre");
return 1;
}
timeban(playerid, giveplayerid, tbl, tbt, result);
}
else{
SendClientMessage(playerid, GREY, "Verwendung: /timeban [Spieler-ID/Teil des Namens] [Bannlänge] [Bannart s/i/h/d/w/m/y] [Grund]");
SendClientMessage(playerid, COLOR_RED, "s: Sekunden | i: Minuten | h: Stunden | d: Tage | w: Wochen | m: Monate | y: Jahre");
return 1;
}
return 1;
}
}
}
return 1;
}
forward checktimeban_execute(playerid, name[]);
public checktimeban_execute(playerid,name[]){
new rows, fields, stringkll[180];
cache_get_data(rows, fields);
if(rows > 0){
format(stringkll, sizeof(stringkll), "UPDATE `server_timeban` SET status = 1 WHERE `usr_name` = '%s' AND status = 0", name);
mysql_query(stringkll);
format(stringkll,sizeof(stringkll),"%s.%s", PlayerName(playerid),name);
admin_log("unbantimeban", stringkll);
for(new i = 0; i <= MAX_PLAYERS; i++){
if(IsPlayerConnected(i)){
if(PlayerInfo[i][ALevel] !=0){
format(stringkll,sizeof(stringkll),"- Admin %s hat den Spieler '%s' den Timeban weggenommen -", PlayerName(playerid), name);
SendClientMessage(i, COLOR_ORANGE, stringkll);
forward CheckTimebans(playerid);
public CheckTimebans(playerid){
new rows, fields, query[256];
cache_get_data(rows, fields);
if(LogFilesJet == 1) printf("CheckTimeBanExecute 1");
if(rows){
new string[256], tba[10], tbr[256], ablauf[64];
new tbid, tbl, tbt, stamp;
if(LogFilesJet == 1) printf("CheckTimeBanExecute 2");
cache_get_field_content(0, "id", string, Connection, 128);
tbid = strval(string);
cache_get_field_content(0, "ban_ablauf", string, Connection, 128);
tbt = strval(string);
cache_get_field_content(0, "ts", string, Connection, 128);
stamp = strval(string);
cache_get_field_content(0, "ban_length", string, Connection, 128);
tbl = strval(string);
cache_get_field_content(0, "ban_reason", tbr, Connection, 128);
cache_get_field_content(0, "ban_typ", tba, Connection, 128);
cache_get_field_content(0, "ablauf", ablauf, Connection, 128);
if(LogFilesJet == 1) printf("CheckTimeBanExecute 3");
if( tbt > stamp ){
if(LogFilesJet == 1) printf("CheckTimeBanExecute 3.1");
if(strcmp(tba, "s", true) == 0)
format(query, sizeof(query), "Du wurdest für %i Sekunden gebannt | Grund: %s", tbl, (tbr));
if(strcmp(tba, "i", true) == 0)
format(query, sizeof(query), "Du wurdest für %i Minuten gebannt | Grund: %s", tbl, (tbr));
if(strcmp(tba, "h", true) == 0)
format(query, sizeof(query), "Du wurdest für %i Stunden gebannt | Grund: %s", tbl, (tbr));
if(strcmp(tba, "d", true) == 0)
format(query, sizeof(query), "Du wurdest für %i Tage gebannt | Grund: %s", tbl, (tbr));
if(strcmp(tba, "w", true) == 0)
format(query, sizeof(query), "Du wurdest für %i Wochen gebannt | Grund: %s", tbl, (tbr));
if(strcmp(tba, "m", true) == 0)
format(query, sizeof(query), "Du wurdest für %i Monate gebannt | Grund: %s", tbl, (tbr));
if(strcmp(tba, "y", true) == 0)
format(query, sizeof(query), "Du wurdest für %i Jahre gebannt | Grund: %s", tbl, (tbr));
SendClientMessage(playerid, 0xA734C2FF, query);
format(query, sizeof(query), "Der Bann läuft ab am: %s", ablauf);
SendClientMessage(playerid, 0xA734C2FF, query);
SetTimerEx("DelayKick", 2000, 0, "d", playerid);
}
else{
if(LogFilesJet == 1) printf("CheckTimeBanExecute 3.2");
format(query, sizeof(query), "UPDATE server_timeban SET status = '1' WHERE id = '%d'", tbid);
mysql_query(query);
}
if(LogFilesJet == 1) printf("CheckTimeBanExecute 4");
}
if(LogFilesJet == 1) printf("CheckTimeBanExecute 5");
}
forward timeban(playerid, pid, tbl, tbt[], tbr[]);
public timeban(playerid, pid, tbl, tbt[], tbr[]){
new gip[128], plip[128], gname[MAX_PLAYER_NAME], name[MAX_PLAYER_NAME], query[512];
GetPlayerIp(pid, gip, sizeof(gip));
GetPlayerIp(playerid, plip, sizeof(plip));
GetPlayerName(pid, gname, sizeof(gname));
GetPlayerName(playerid, name, sizeof(name));
if(strcmp(tbt, "s", true) == 0)
format(query, sizeof(query), "Info: %s wurde von %s für %i Sekunden gebannt | Grund: %s", gname, name, tbl, (tbr));
if(strcmp(tbt, "i", true) == 0)
format(query, sizeof(query), "Info: %s wurde von %s für %i Minuten gebannt | Grund: %s", gname, name, tbl, (tbr));
if(strcmp(tbt, "h", true) == 0)
format(query, sizeof(query), "Info: %s wurde von %s für %i Stunden gebannt | Grund: %s", gname, name, tbl, (tbr));
if(strcmp(tbt, "d", true) == 0)
format(query, sizeof(query), "Info: %s wurde von %s für %i Tage gebannt | Grund: %s", gname, name, tbl, (tbr));
if(strcmp(tbt, "w", true) == 0)
format(query, sizeof(query), "Info: %s wurde von %s für %i Wochen gebannt | Grund: %s", gname, name, tbl, (tbr));
if(strcmp(tbt, "m", true) == 0)
format(query, sizeof(query), "Info: %s wurde von %s für %i Monate gebannt | Grund: %s", gname, name, tbl, (tbr));
if(strcmp(tbt, "y", true) == 0)
format(query, sizeof(query), "Info: %s wurde von %s für %i Jahre gebannt | Grund: %s", gname, name, tbl, (tbr));
if(strfind(tbr,"SDM",true) != -1){
PlayerInfo[pid][waffeschein] = 0;
}
SendClientMessageToAll(0xFF6347AA, query);
format(query, sizeof(query), "INSERT INTO server_timeban(usr_id, usr_name, usr_ip, ban_time, ban_length, ban_typ, ban_reason, adm_name, adm_ip, status) VALUES(%d,'%s', '%s', UNIX_TIMESTAMP(), '%i', '%s', '%s', '%s', '%s', '0')", PlayerInfo[pid][Spielerzid], gname, gip, tbl, tbt, (tbr), name, plip);
SendClientMessage(playerid, 0xA734C2FF, query);
mysql_query(query);
printf(query);
SetTimerEx("DelayKick", 2000, 0, "d", pid);
}