MySQL geld & level speichern und auslesen fehler

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 schreibe grade an meinem Selfmade, aber beim startbonus bzw. allgemein wird das geld und das level nicht gespeichert!


    Wo ist HIER der Fehler?
    Unter dem stock AccountErstellen, gebe ich dem spieler vie GivePlayerMoney & SetPlayerScore den startbonus!
    Naja, er wird weder gespeichert noch ausgelesen ^^...


    stock SpielerLaden(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    GetPlayerName(playerid, SpielerInfo[playerid][pName], MAX_PLAYER_NAME);
    SetPlayerScore(playerid, SpielerInfo[playerid][pLevel] = mysql_GetInt("accounts", "Level", "Name", SpielerInfo[playerid][pName]));
    GivePlayerMoney(playerid,SpielerInfo[playerid][pGeld] = mysql_GetInt("accounts", "Geld", "Name", SpielerInfo[playerid][pName]));
    SpielerInfo[playerid][pKills] = mysql_GetInt("accounts", "Kills", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pTode] = mysql_GetInt("accounts", "Tode", "Name", SpielerInfo[playerid][pName]);
    }
    return 1;
    }
    stock SpielerSpeichern(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    if(GetPVarInt(playerid,"Eingeloggt") == 1)
    {
    mysql_SetInt("accounts", "Level", SpielerInfo[playerid][pLevel] = GetPlayerScore(playerid), "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Geld", SpielerInfo[playerid][pGeld] = GetPlayerMoney(playerid), "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Kills", SpielerInfo[playerid][pKills], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Tode", SpielerInfo[playerid][pTode], "Name", SpielerInfo[playerid][pName]);
    mysql_SetFloat("accounts", "Health", SpielerInfo[playerid][pHealth], "Name", SpielerInfo[playerid][pName]);
    }
    }
    return 1;
    }


    Ich danke für jede hilfreiche Antwort :love:

  • stock SpielerErstellen(playerid, pass[])
    {
    new query[256],Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
    mysql_real_escape_string(Name,Name);
    mysql_real_escape_string(pass,pass);
    format(query, sizeof(query), "INSERT INTO `accounts` (`Name`, `Passwort`) VALUES ('%s', '%s')", Name, pass);
    // SpielerInfo[playerid][pLevel] = 2;
    // SpielerInfo[playerid][pGeld] = 8500;
    GivePlayerMoney(playerid,8500);
    SetPlayerScore(playerid,2);
    SendClientMessage(playerid, Orange,"Erfolgreich Registriert!");
    mysql_query(query);
    return true;
    }


    PS: Vom Tutorial von Maddin ^^

  • stock SpielerSpeichern(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    if(GetPVarInt(playerid,"Eingeloggt") == 1)
    { GetPlayerName(playerid,SpielerInfo[playerid][pName],MAX_PLAYER_NAME);
    mysql_SetInt("accounts", "Level", SpielerInfo[playerid][pLevel] = GetPlayerScore(playerid), "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Geld", SpielerInfo[playerid][pGeld] = GetPlayerMoney(playerid), "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Kills", SpielerInfo[playerid][pKills], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Tode", SpielerInfo[playerid][pTode], "Name", SpielerInfo[playerid][pName]);
    mysql_SetFloat("accounts", "Health", SpielerInfo[playerid][pHealth], "Name", SpielerInfo[playerid][pName]);
    }
    }
    return 1;
    }

  • [04:27:11]


    [04:27:11] ---------------------------


    [04:27:11] MySQL Debugging activated (12/26/12)


    [04:27:11] ---------------------------


    [04:27:11]


    [04:27:55] >> mysql_real_escape_string( Connection handle: 1 )


    [04:27:55] CMySQLHandler::EscapeString(test); - Escaped 4 characters to test.


    [04:27:55] >> mysql_query( Connection handle: 1 )


    [04:27:55] CMySQLHandler::Query(SELECT * FROM `accounts` WHERE `Name` = 'test') - Successfully executed.


    [04:27:55] >> mysql_store_result( Connection handle: 1 )


    [04:27:55] CMySQLHandler::StoreResult() - Result was stored.


    [04:27:55] >> mysql_num_rows( Connection handle: 1 )


    [04:27:55] CMySQLHandler::NumRows() - Returned 0 row(s)


    [04:27:55] >> mysql_free_result( Connection handle: 1 )


    [04:27:55] CMySQLHandler::FreeResult() - Result was successfully free'd.


    [04:28:10] >> mysql_real_escape_string( Connection handle: 1 )


    [04:28:10] CMySQLHandler::EscapeString(test); - Escaped 4 characters to test.


    [04:28:10] >> mysql_real_escape_string( Connection handle: 1 )


    [04:28:10] CMySQLHandler::EscapeString(Keks); - Escaped 4 characters to Keks.


    [04:28:10] >> mysql_query( Connection handle: 1 )


    [04:28:10] CMySQLHandler::Query(INSERT INTO `accounts` (`Name`, `Passwort`) VALUES ('test', 'Keks')) - Successfully executed.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    switch(dialogid)
    {
    case DIALOG_REGISTER:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,ServerName,"{FF0000}Das angegebene Passwort war zu Kurz!\n{FFFFFF}Bitte gib jetzt dein gewünschtes Passwort ein!","Weiter","Abbrechen");
    return 1;
    }
    else
    {
    SpielerErstellen(playerid, inputtext);
    SetPVarInt(playerid,"Eingeloggt",1);
    SpawnPlayer(playerid);
    return 1;
    }
    }
    else
    {
    Kick(playerid);
    }
    }
    case DIALOG_LOGIN:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,ServerName,"{FF0000}Das angegebene Passwort war falsch!\n{FFFFFF}Bitte gib jetzt dein Passwort ein!","Weiter","Abbrechen");
    return 1;
    }
    else
    {
    new SpielerName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
    if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true))
    {
    SetPVarInt(playerid,"Eingeloggt",1);
    SpielerLaden(playerid);
    SpawnPlayer(playerid);
    return 1;
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,ServerName,"{FF0000}Das angegebene Passwort war falsch!\n{FFFFFF}Bitte gib jetzt dein Passwort ein!","Weiter","Abbrechen");
    return 1;
    }
    }
    }
    else
    {
    Kick(playerid);
    }
    }
    }
    return 1;
    }

  • Hir so müsste es gehen:


    Spoiler anzeigen
    stock SpielerLaden(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    GetPlayerName(playerid, SpielerInfo[playerid][pName], MAX_PLAYER_NAME);
    SetPlayerScore(playerid, mysql_GetInt("accounts", "Level", "Name", SpielerInfo[playerid][pName]));
    GivePlayerMoney(playerid, mysql_GetInt("accounts", "Geld", "Name", SpielerInfo[playerid][pName]));
    SpielerInfo[playerid][pKills] = mysql_GetInt("accounts", "Kills", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pTode] = mysql_GetInt("accounts", "Tode", "Name", SpielerInfo[playerid][pName]);
    }
    return 1;
    }
    stock SpielerSpeichern(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    if(GetPVarInt(playerid,"Eingeloggt") == 1)
    {
    SpielerInfo[playerid][pLevel] = GetPlayerScore(playerid);
    SpielerInfo[playerid][pGeld] = GetPlayerMoney(playerid);
    mysql_SetInt("accounts", "Level", SpielerInfo[playerid][pLevel], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Geld", SpielerInfo[playerid][pGeld], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Kills", SpielerInfo[playerid][pKills], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Tode", SpielerInfo[playerid][pTode], "Name", SpielerInfo[playerid][pName]);
    mysql_SetFloat("accounts", "Health", SpielerInfo[playerid][pHealth], "Name", SpielerInfo[playerid][pName]);
    }
    }
    return 1;
    }

    Mit freundlichen Grüßen,


    Fabi.StaR :love::saint:


  • Hir sorry hatte nen fehler gesehen :D


    Spoiler anzeigen
    stock SpielerLaden(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    GetPlayerName(playerid, SpielerInfo[playerid][pName], MAX_PLAYER_NAME);
    SetPlayerScore(playerid, mysql_GetInt("accounts", "Level", "Name", SpielerInfo[playerid][pName]));
    GivePlayerMoney(playerid, mysql_GetInt("accounts", "Geld", "Name", SpielerInfo[playerid][pName]));
    SpielerInfo[playerid][pKills] = mysql_GetInt("accounts", "Kills", "Name", SpielerInfo[playerid][pName]);
    SpielerInfo[playerid][pTode] = mysql_GetInt("accounts", "Tode", "Name", SpielerInfo[playerid][pName]);
    }
    return 1;
    }
    stock SpielerSpeichern(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
    {
    if(GetPVarInt(playerid,"Eingeloggt") == 1)
    {
    mysql_SetInt("accounts", "Level", GetPlayerScore(playerid), "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Geld", GetPlayerMoney(playerid), "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Kills", SpielerInfo[playerid][pKills], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("accounts", "Tode", SpielerInfo[playerid][pTode], "Name", SpielerInfo[playerid][pName]);
    mysql_SetFloat("accounts", "Health", SpielerInfo[playerid][pHealth], "Name", SpielerInfo[playerid][pName]);
    }
    }
    return 1;
    }

    Mit freundlichen Grüßen,


    Fabi.StaR :love::saint: