MySQL - Laden und Speichern von Spielern (Problem)

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 Breadfish,


    irgendwie versteht sich mein Script garnicht mehr mit MySQL oder weiß ich was. Jedenfalls möchte er nicht Laden, bzw. richtig abspeichern.
    Ich weiß nicht was das Problem vom Laden ist, obwohl ich keine Fehler dabei auffinden kann, sowie beim Speichern.


    Ich poste Euch mal die Codes:


    public LoginTimer(playerid,classid)
    {
    SetSpawnInfo(playerid,0,AccountInfo[playerid][pAccSkin],1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
    TogglePlayerSpectating(playerid, 0);SpawnPlayer(playerid);Spielerladen(playerid);
    return 1;
    }


    Das ist, wenn sich der Spieler einloggt. Spieler wird aber nicht geladen. :(
    Und beim abspeichern, werden in fast alle Spalten eine "-1" Eingetragen.



    Ist es normal? :D


    Hoffe mir kann wer helfen. Danke im vorraus.

  • stock Spielerladen(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    GetPlayerName(playerid, AccountInfo[playerid][pAccName], MAX_PLAYER_NAME);
    format(AccountInfo[playerid][pAccSicherheitsfrage],64,mysql_GetString("spieleraccounts","Sicherheitsfrage","Name",AccountInfo[playerid][pAccName]));
    format(AccountInfo[playerid][pAccSicherheitsantwort],32,mysql_GetString("spieleraccounts","Sicherheitsantwort","Name",AccountInfo[playerid][pAccName]));
    AccountInfo[playerid][pAccLevel] = mysql_GetInt("spieleraccounts","Level","Name",AccountInfo[playerid][pAccName]);
    AccountInfo[playerid][pAccSkin] = mysql_GetInt("spieleraccounts","SkinID","Name",AccountInfo[playerid][pAccName]);
    AccountInfo[playerid][pAccGeld] = mysql_GetInt("spieleraccounts","Geld","Name",AccountInfo[playerid][pAccName]);
    AccountInfo[playerid][pAccToetungen] = mysql_GetInt("spieleraccounts","Toetungen","Name",AccountInfo[playerid][pAccName]);
    AccountInfo[playerid][pAccTode] = mysql_GetInt("spieleraccounts","Tode","Name",AccountInfo[playerid][pAccName]);
    AccountInfo[playerid][pAccSicherheit] = mysql_GetInt("spieleraccounts","Sicherheit","Name",AccountInfo[playerid][pAccName]);
    }
    printf("Name: %s, Level: %i, Geld: %i Skin: %i",AccountInfo[playerid][pAccName],AccountInfo[playerid][pAccLevel],AccountInfo[playerid][pAccGeld],AccountInfo[playerid][pAccSkin]);
    return 1;
    }


    stock SpielerSpeichern(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid)){
    if(GetPVarInt(playerid,"Eingeloggt") == 1){
    mysql_SetString("spieleraccounts","Sicherheitsfrage",AccountInfo[playerid][pAccSicherheitsfrage],"Name",AccountInfo[playerid][pAccName]);
    mysql_SetString("spieleraccounts","Sicherheitsantwort",AccountInfo[playerid][pAccSicherheitsantwort],"Name",AccountInfo[playerid][pAccName]);
    mysql_SetInt("spieleraccounts","Level",AccountInfo[playerid][pAccLevel],"Name",AccountInfo[playerid][pAccName]);
    mysql_SetInt("spieleraccounts","Geld",AccountInfo[playerid][pAccGeld],"Name",AccountInfo[playerid][pAccName]);
    mysql_SetInt("spieleraccounts","Toetungen",AccountInfo[playerid][pAccToetungen],"Name",AccountInfo[playerid][pAccName]);
    mysql_SetInt("spieleraccounts","Tode",AccountInfo[playerid][pAccTode],"Name",AccountInfo[playerid][pAccName]);
    mysql_SetInt("spieleraccounts","Sicherheit",AccountInfo[playerid][pAccSicherheit],"Name",AccountInfo[playerid][pAccName]);
    }
    }
    printf("Name: %s, Level: %i, Geld: %i Skin: %i",AccountInfo[playerid][pAccName],AccountInfo[playerid][pAccLevel],AccountInfo[playerid][pAccGeld],AccountInfo[playerid][pAccSkin]);
    return 1;
    }


    [15:24:26] Name: BlaxesAQ, Level: 33, Geld: 2352 Skin: 32 - RAUFGEJOINT
    [15:25:01] Name: BlaxesAQ, Level: 11111, Geld: 2352 Skin: 143 - RUNTERGEGANGEN
    Nur das Level hat er mir gegeben, also die 111111. Und wo ich auf den Server gegangen bin, habe ich nichts erhalten, außer mein Skin.
    Hier mal die beiden Stocks. :)