[mysql] Save geht nicht

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
  • Also irgendwie geht das nicht ich komm einfach nicht auf meinen Fehler könnte mir einer von euch sagen warum es nicht geht?
    Save:
    savePlayer(playerid)
    {
    if(sInfo[playerid][Eingeloggt]==1)return 1;
    //Speichern level,money,fraktion,admin
    new query[128];
    format(query,sizeof(query),"UPDATE user SET level='%i' money='%i' fraktion='%i' admin='%i% WHERE id='%i'",sInfo[playerid][level],SetPlayerMoney(playerid,money),sInfo[playerid][id],sInfo[playerid][fraktion],sInfo[playerid][adminlevel]);
    mysql_function_query(dbhandle,query,false,"","");
    return 1;
    }


    load:


    public OnPasswordResponse(playerid)
    {
    new num_fields,num_rows;
    cache_get_data(num_rows,num_fields,dbhandle);
    if(num_rows==1)
    {
    //Passwort richtig
    sInfo[playerid][Eingeloggt] = 0;
    sInfo[playerid][level] = cache_get_field_content_int(0,"level",dbhandle);
    sInfo[playerid][fraktion] = cache_get_field_content_int(0,"fraktion",dbhandle);
    sInfo[playerid][adminlevel] = cache_get_field_content_int(0,"adminlevel",dbhandle);
    SetPlayerScore(playerid,sInfo[playerid][level]);
    sInfo[playerid][id] = cache_get_field_content_int(0,"id",dbhandle);
    SetPlayerMoney(playerid,cache_get_field_content_int(0,"money",dbhandle));


    wäre nett wenn mir wer helfen könnte


    mfg
    Fenster

    "Man ist entweder Teil der Lösung oder Teil des Problems. Ich habe mich für ersteres entschieden."
    Michail Gorbatschow

  • Was genau geht da denn nicht?


    Du musst auch bei Save bei WHERE id hinten die ID ausgeben^^


    format(query,sizeof(query),"UPDATE user SET level='%i' money='%i' fraktion='%i' admin='%i% WHERE id='%i'",sInfo[playerid][level],SetPlayerMoney(playerid,money),sInfo[playerid][id],sInfo[playerid][fraktion],sInfo[playerid][adminlevel],playerid);

  • Deine WHERE anwesung gibt nix aus da du den string dafür nicht hergibst


    @vorposter du weißt schon das playerid des Spielers auf den Server ist oder?
    Das heißt nicht das er auch die id in der Datenbank hat

    All in all it's just another brick in the wall

  • Geht eben nicht es wird alles geladen aber gespeichert wird so gut wie nichts.
    Wenn ich nicht schon alles probiert hätte würde ich hier nicht schreiben ich finde den Fehler einfach nicht.

    "Man ist entweder Teil der Lösung oder Teil des Problems. Ich habe mich für ersteres entschieden."
    Michail Gorbatschow

  • Mit "SetPlayerMoney" funktioniert das erst Recht nicht.
    Denn mit SetPlayerMoney, sagt der Name schon, setzt du etwas. Also wenn der Spieler 0€ auf der Hand hat, und bei OnPlayerDeath schreibst du rein:
    SetPlayerMoney(playerid,1000);
    Sollte der Spieler jetzt sterben, bekommt der Spieler 1000€.


    Also musst du anstatt "SetPlayerMoney", lieber "GetPlayerMoney(playerid);" benutzen!


    Grüße