MySQL Geld wird nicht gespeichert

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
  • Hallo,
    ich bin gerade dabei ein Script zu schreiben, das wenn der Spieler stirbt in seiner MySQL-Tabelle "geld" (Mit den Feldern "user" & "geld") sein Geld-120 zu speichern. Dies funktioniert allerdings nicht, da ich folgenden Fehler in meiner Konsole bekomme:

    Code
    Could not execute query. Unknown column 'Padarom' in 'field list'.


    Folgendes Script:
    public OnPlayerDeath(playerid, killerid, reason)
    {
    if(GetPlayerMoney(playerid)>120)
    {
    new playercash = GetPlayerMoney(playerid)-120;
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof name);
    format(query,sizeof query,"INSERT INTO geld (user, geld) VALUES (%s, %d)", name, playercash);
    mysql_query(query);
    SendClientMessage(playerid,ROT,"Eine Arztkostengebühr von 120$ wurde dir abgebucht.");
    }
    return 1;
    }
    Hier ein Teil aus dem Callback OnPlayerSpawn:
    if(pInfo[playerid][loggedin] == 1)
    {
    new name[MAX_PLAYER_NAME], cash[64];
    GetPlayerName(playerid, name, sizeof(name));
    format(query,sizeof(query),"SELECT `geld` FROM `geld` WHERE `user` = '%s'",name);
    mysql_query(query);
    mysql_store_result();
    mysql_fetch_field("geld",cash);
    ResetPlayerMoney(playerid);
    GivePlayerMoney(playerid,strval(cash));
    mysql_free_result();
    }


    Mit freundlichen Grüßen
    Padarom

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

    Einmal editiert, zuletzt von Padarom ()

  • warum machst du das eigentlich mit insert into und nicht mit update?


    SQL
    update geld set geld = %d where user = '%s'


    Bei insert into macht er dir jedesmal einen neuen Eintrag, macht daher beim alten Ergebnis keine Änderung...

  • Cool, habe ständig Funktionen gesucht die sowas machen aber nichts gefunden. Danke, funktioniert alles.


    Mit freundlichen Grüßen
    Padarom

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger