OnPlayerLogin Speichert nicht ab?

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 ersteinmal hallo Brotfische :)


    Ich habe nun langsam das mysql im script auf die reihe bekommen, aber nun hapert es glaube ich an der abspeicherung in den PlayerInfo arrays.
    Kann mir einer hierbei helfen? Danke!


    OnPlayerLogin:
    public OnPlayerLogin(playerid, const string[])
    {
    new Data[1024];
    new Field[64];
    new query[128];
    new PlayerName[24];
    GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
    new rcnt = 1;
    format(query, sizeof(query), "SELECT * FROM spieler WHERE name = '%s'", PlayerName);
    samp_mysql_query(query);
    samp_mysql_store_result();
    samp_mysql_fetch_row(Data);
    print(Data);
    samp_mysql_strtok(Field, "|", Data);
    while (samp_mysql_strtok(Field, "|", "")==1)
    {
    if (rcnt == 3) PlayerInfo[playerid][pLevel] = strval(Field);
    if (rcnt == 4) PlayerInfo[playerid][pEXP] = strval(Field);
    if (rcnt == 5) PlayerInfo[playerid][pScheinA] = strval(Field);
    if (rcnt == 6) PlayerInfo[playerid][pScheinB] = strval(Field);
    if (rcnt == 7) PlayerInfo[playerid][pScheinC] = strval(Field);
    rcnt++;
    }
    gPlayerLogged[playerid] = 1;
    gPlayerAccount[playerid] = 1;
    SetPlayerScore(playerid, PlayerInfo[playerid][pLevel]);
    samp_mysql_free_result();
    return 1;
    }
    Print() auszug: Normale Zeile aus mysql(8|skeita|passwort|0|0|0|0)
    und bei dem abrufen von PlayerInfo[playerid][pLevel] kommt dann nurnoch 0^^
    Das waren so meine anhaltepunkte..

  • Wenn es einen Fehler bei der Abspeicherung gibt warum zeigst du uns den Teil wo es geladen wird?

  • Nein, liest doch genauer (besonders du NeoPhoenix ^^) er meint eigentlich das Laden, also die abspeicherung der Daten in die Variablen ^^. So meinte er es und das Problem liegt an samp_mysql_strtok jedoch kenn ich mich mit mysql ned so aus ^^


    Probiers mal so:


    public OnPlayerLogin(playerid, const string[])
    {
    new Data[1024];
    new Field[64];
    new query[128];
    new PlayerName[24];
    GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
    new rcnt = 1;
    format(query, sizeof(query), "SELECT * FROM spieler WHERE name = '%s'", PlayerName);
    samp_mysql_query(query);
    samp_mysql_store_result();
    samp_mysql_fetch_row(Data);
    print(Data);
    samp_mysql_strtok(Field, "|", Data);
    while (samp_mysql_strtok(Field, "|", "")==1)
    {
    if (rcnt == 2) PlayerInfo[playerid][pLevel] = strval(Field);
    if (rcnt == 3) PlayerInfo[playerid][pEXP] = strval(Field);
    if (rcnt == 4) PlayerInfo[playerid][pScheinA] = strval(Field);
    if (rcnt == 5) PlayerInfo[playerid][pScheinB] = strval(Field);
    if (rcnt == 6) PlayerInfo[playerid][pScheinC] = strval(Field);
    rcnt++;
    }
    gPlayerLogged[playerid] = 1;
    gPlayerAccount[playerid] = 1;
    SetPlayerScore(playerid, PlayerInfo[playerid][pLevel]);
    samp_mysql_free_result();
    return 1;
    }


    p.S.: pöser NeoPhoenix ^^

    Mfg Templer


    >>Dein Breadfish-Thema im Unterforum ScriptingBase / Scriptingwünsche wurde nicht richtig beantworter?<<
    >>Es handelt sich um ein Programmier Problem und du nicht einfach weiter kommst wo der Fehler sein könnte?<<
    Dann melde dich bei mir über die PN-Funktion indem du den Link zu deinem Breadfish-Themen Problem schickst.
    Voraussetzung:
    Thema älter als 1 Tag und im Breadfish Forum gespostet!

  • Funzt leider net ... Alles Beim alten keine Veränderung der werte...
    Edit: Gerade habe ich vestgestellt, dass ich die Reihe: 8|SkEiTa|lol|0|0|0|0
    ausgelesen bekomme, aber direkt nach dem zerteilen des strings nichts mehr da ist.
    Also kann mir einer eine möglichkeit zeigen, Strings wie mit explode(); (in php) zu
    zerlegen? das wäre super von euch! danke!

    Einmal editiert, zuletzt von SkEiTa ()