MySQL Fehler

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hey, habe nen Fehler beim Connecten wenn einer einen Tban hat oder gebannt ist.
    Also bei dem jenigen restartet der server dann immer. Ihm wird es erst nach dem 2ten mal einloggen angezeigt.
    Hier die Stock abfrage.
    stock IstSpielerGebannt(playerid)
    {
    MySQLCheckConnection();
    new Query[255],Data[32],Grund[124],whodid[64];
    new Text[256],Value = strval(Data)-gettime();
    new Zeit = Value/60;
    format(Query,sizeof(Query),"SELECT * FROM `bans` WHERE `Spielername`='%s'",SpielerInfo[playerid][sName]);
    mysql_query(Query);
    mysql_store_result();
    if(mysql_num_rows()){
    mysql_fetch_field("Zeit",Data);
    mysql_fetch_field("Grund",Grund);
    mysql_fetch_field("Von",whodid);
    mysql_free_result();
    if(strval(Data)){
    if(strval(Data) > gettime()){
    SendClientMessage(playerid,Farbe_Leuchtrot,"Dieser Account wurde gesperrt!");
    SendClientMessage(playerid,Farbe_Leuchtrot,"");
    format(Text,sizeof(Text),"Name: %s",SpielerInfo[playerid][sName]);
    SendClientMessage(playerid,Farbe_Leuchtrot,Text);
    format(Text,sizeof(Text),"Grund: %s",Grund);
    SendClientMessage(playerid,Farbe_Leuchtrot,Text);
    format(Text,sizeof(Text),"Dauer: %d Minuten",Zeit);
    SendClientMessage(playerid,Farbe_Leuchtrot,Text);
    format(Text,sizeof(Text),"Von: %s",whodid);
    SendClientMessage(playerid,Farbe_Leuchtrot,Text);
    SendClientMessage(playerid,Farbe_Leuchtrot,"");
    SendClientMessage(playerid,Farbe_Leuchtrot,"Sollte der Bann ungerechtfertigt sein, bitte erstelle hiervon einen Screenshot");
    SendClientMessage(playerid,Farbe_Leuchtrot,"Und schreibe einen Entbannantrag in unser Forum!");
    Kick(playerid);
    return true;
    }
    format(Query,sizeof(Query),"DELETE FROM `bans` WHERE `Spielername`='%s'",SpielerInfo[playerid][sName]);
    mysql_query(Query);
    return true;
    }
    SendClientMessage(playerid,Farbe_Leuchtrot,"Dieser Account wurde gesperrt!");
    format(Text,sizeof(Text),"Name: %s",SpielerInfo[playerid][sName]);
    SendClientMessage(playerid,Farbe_Leuchtrot,Text);
    format(Text,sizeof(Text),"Grund: %s",Grund);
    SendClientMessage(playerid,Farbe_Leuchtrot,Text);
    format(Text,sizeof(Text),"Dauer: %d Minuten",Zeit);
    SendClientMessage(playerid,Farbe_Leuchtrot,Text);
    format(Text,sizeof(Text),"Von: %s",whodid);
    SendClientMessage(playerid,Farbe_Leuchtrot,Text);
    SendClientMessage(playerid,Farbe_Leuchtrot,"");
    SendClientMessage(playerid,Farbe_Leuchtrot,"Sollte der Bann ungerechtfertigt sein, bitte erstelle hiervon einen Screenshot");
    SendClientMessage(playerid,Farbe_Leuchtrot,"Und schreibe einen Entbannantrag in unser Forum!");
    Kick(playerid);
    Kick(playerid);
    return true;
    }
    format(Query,sizeof(Query),"SELECT * FROM `bans` WHERE `IpAdresse`='%s'",SpielerInfo[playerid][sIp]);
    mysql_query(Query);
    mysql_store_result();
    if(mysql_num_rows()){
    mysql_fetch_field("Zeit",Data);
    mysql_free_result();
    if(strval(Data)){
    if(strval(Data) > gettime()){
    Kick(playerid);
    return true;
    }format(Query,sizeof(Query),"DELETE FROM `bans` WHERE `IpAdresse`='%s'",SpielerInfo[playerid][sIp]);
    mysql_query(Query);
    return true;
    }Kick(playerid);
    return true;
    }
    format(Query,sizeof(Query),"SELECT * FROM `bans` WHERE `Range-IpAdresse`='%s'",RangeIp(SpielerInfo[playerid][sIp]));
    mysql_query(Query);
    mysql_store_result();
    if(mysql_num_rows()){
    mysql_fetch_field("Zeit",Data);
    mysql_free_result();
    if(strval(Data)){
    if(strval(Data) > gettime()){
    format(Query,sizeof(Query),"UPDATE `bans` SET `IpAdresse`='%s' WHERE `Spielername`='%s'",SpielerInfo[playerid][sIp],SpielerInfo[playerid][sName]);
    mysql_query(Query);
    Kick(playerid);
    return true;
    }format(Query,sizeof(Query),"DELETE FROM `bans` WHERE `Range-IpAdresse`='%s'",RangeIp(SpielerInfo[playerid][sIp]));
    mysql_query(Query);
    return true;
    }Kick(playerid);
    return true;
    }mysql_free_result();
    return false;
    }

  • Kick(playerid); Kick(playerid);


    :huh:


    Aber davon mal abegesehen, dies kann durch so einen Kick passieren, wenn mich nicht alles täuscht, ist es so, dass wenn man unter OnPlayerConnect gekickt wird, dann macht die samp.exe dass automatisch und versucht neu auf den Server zu connecten ;)


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S