IP speichern

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,
    Ich wollte die IPS in der Datenbank speichern, doch i.wie klappt es nicht!
    Der schreibt nichts in die Datenbank

    stock savePlayer(playerid)
    {
    if(sInfo[playerid][pEingeloggt]==0)return 1;
    new query[256];
    new plrIP[16];
    GetPlayerIp(playerid, plrIP, sizeof(plrIP));
    if(!strcmp(plrIP, "127.0.0.1"))
    format(query,sizeof(query),"UPDATE user SET level='%i',money='%i',kills = '%d',tode = '%d',ip = '%s',adminlevel='%i' WHERE id='%i'",sInfo[playerid][pLevel],GetPlayerMoney(playerid),sInfo[playerid][pKills],sInfo[playerid][pTod],plrIP,sInfo[playerid][pAdmin],sInfo[playerid][PlayerID]);
    mysql_function_query(dbhandle,query,false,"","");
    return 1;
    }



    new plrIP[16];
    GetPlayerIp(playerid, plrIP, sizeof(plrIP));
    if(!strcmp(plrIP, "127.0.0.1"))
    mysql_escape_string(inputtext,passwort,dbhandle);
    format(query,sizeof(query),"INSERT INTO user (username,password,ip) VALUES ('%s','%s','%s') ",name,passwort,plrIP);
    mysql_function_query(dbhandle,query,false,"","");

  • Wenn du das auf den Gehosteten Server hast dann ist das if(!strcmp(plrIP, "127.0.0.1")) unötig


    Hier mal einer kleiner Quelltext:



    stock GetIP(playerid)
    {
    new IP[16];
    GetPlayerIp(playerid,IP,16);
    return IP;
    }


    format(query,sizeof(query),"UPDATE user SET level='%i',money='%i',kills = '%d',tode = '%d',ip = '%s',adminlevel='%i' WHERE id='%i'",sInfo[playerid][pLevel],GetPlayerMoney(playerid),sInfo[playerid][pKills],sInfo[playerid][pTod],GetIP(playerid),sInfo[playerid][pAdmin],sInfo[playerid][PlayerID]);
    mysql_function_query(dbhandle,query,false,"","");


  • Er speichert bei allen die IP: 255.255.255


  • Das liegt daran das er nicht mehr auf den Server ist
    Speicher die IP beim Connect zwischen und dann hast du die ip



    public OnPlayerConnect(playerid)
    {
    //Login/Register
    new name[MAX_PLAYER_NAME],query[128],query2[64];
    GetPlayerName(playerid,name,sizeof(name));
    format(query,sizeof(query),"SELECT id FROM user WHERE username='%s'",name);
    mysql_function_query(dbhandle,query,true,"OnUserCheck","i",playerid);
    format(query2,sizeof(query2),"UPDATE user SET ip = '%s' WHERE id='%i'",GetIP(playerid),sInfo[playerid][PlayerID]);
    mysql_function_query(dbhandle,query2,false,"","");
    return 1;
    }
    Irgendwas mache ich falsch ^^