MySQL Speicher nix

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
  • Fehler, denn ich am Anfang gesagt habe, wurde bestätigt.
    Führe mal den Query aus:

    SQL
    UPDATE user SET Age=0, Geschlecht=0, AdminLevel=0, Mapper=0, Scripter=0, Premium=0, Level=0, Respektpunkte=0, BarGeld=0, BankKonto=0, BankGeld=0,Skin=0, Fraktion=0, FraktionRang=0, Spawn=0, Handy=0, Handynummer=0, PayDay=0, Spielzeit=0, Jail=0, JailTime=0, Prison=0, PrisonCheckpoints=0 WHERE id=3

    Ergebnis bitte.

    Chief Technology Officer (CTO)


    Interesse an folgenden Domains?

    fivemp.de - planet-zoo.de

    Jetzt anschreiben :)

  • @Jeffry
    Sein Query den er am Anfang gepostet hat, ist falsch. Integer sind keine Strings, und Anführungszeichen signalisieren SQL dass jetzt ein String kommt. Hier wären wir wieder bei den Grundlegenden Verständnis für MySQL.


    @Buzzy
    Nein, den Datensatz mit der ID gleich 3.

    Chief Technology Officer (CTO)


    Interesse an folgenden Domains?

    fivemp.de - planet-zoo.de

    Jetzt anschreiben :)

  • Ja, die Daten eben, die in der Tabelle stehen (erster Button in phpMyAdmin).


    @Jony
    Ließ dir bitte den Thread von letztem mal nochmal durch, deine Ansicht dass dies falsch ist ist falsch. Mehr sage ich dazu nicht mehr. Das Query ist mit den Ticks absolut korrekt.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Oh man, im Feld ID steht doch 0. Es kann ja nicht funktionieren. Du willst den Datensatz mit der ID 3 updaten, der existiert aber nicht...

    Chief Technology Officer (CTO)


    Interesse an folgenden Domains?

    fivemp.de - planet-zoo.de

    Jetzt anschreiben :)

  • Mein SpielerLaden


  • Das ist die Login funktion wo ich den Player lade:


    @Jeffrydas Problem ist, dass es gar nicht gespeichert wird


    Und so lade ich mein Spieler:

    Einmal editiert, zuletzt von Marschl ()

  • Ah, so machst du das. Das sieht mir dann aber korrekt aus.
    Was mir da eigentlich nur in den Sinn kommt ist, dass du die pID irgendwo überschreibst.


    Versuche es doch mal so:
    stock SpielerSpeichern(playerid)
    {
    if(sInfo[playerid][pEingeloggt] == 0)return 1;
    new query[1024], name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, MAX_PLAYER_NAME);

    format(query, sizeof(query), "UPDATE user SET Age='%i', Geschlecht='%i', AdminLevel='%i', Mapper='%i', Scripter='%i', Premium='%i', Level='%i', Respektpunkte='%i', ",
    sInfo[playerid][pAge], sInfo[playerid][pSex], sInfo[playerid][pAdminLevel], sInfo[playerid][pMapper], sInfo[playerid][pScripter],
    sInfo[playerid][pPremium], sInfo[playerid][pLevel], sInfo[playerid][pRespektpunkte]);

    format(query, sizeof(query), "%sBarGeld='%i', BankKonto='%i', BankGeld='%i',Skin='%i', Fraktion='%i', FraktionRang='%i', Spawn='%i', Handy='%i', Handynummer='%i', ",
    query, GetPlayerMoney(playerid), sInfo[playerid][pBankKonto], sInfo[playerid][pBankGeld],sInfo[playerid][pSkin], sInfo[playerid][pFraktion],
    sInfo[playerid][pFraktionRang], sInfo[playerid][pSpawn], sInfo[playerid][pHandy], sInfo[playerid][pHandynummer]);

    format(query, sizeof(query), "%sPayDay='%i', Spielzeit='%i', Jail='%i', JailTime='%i', Prison='%i', PrisonCheckpoints='%i' WHERE username='%s'",
    query, sInfo[playerid][pPayDay], sInfo[playerid][pSpielzeit], sInfo[playerid][pJail], sInfo[playerid][pJailTime],
    sInfo[playerid][pPrison], sInfo[playerid][pPrisonCheckpoints], name);

    mysql_function_query(Handle, query, false, "", "");
    return 1;
    }


    Dann dürfte die Bedingung auf jeden Fall korrekt sein, da über den Name zugegriffen wird.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen