Kontoauszug System

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
  • Wenn du noch neu im Umgang mit mySQL bist ist es immer hilfreich deine Queries erst im phpMyAdmin auszuführen. Da siehst du dann direkt, ob irgendwelche Fehler auftreten und wie das Resultat aussieht nach dem Query.


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • So führt der Query ins Nichts. Du musst über SAMP erstmal ermitteln welche ID der Spieler in deiner Datenbank hat und diese dann auch bei dem Query angeben (über eine Variable).


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • Achso xD


    SQL
    SELECT * FROM kontoauszug WHERE pdb_id = 'pInfo[playerid][p_id]' ORDER BY ID DESC LIMIT 15


    In Der Varriable pInfo[playerid][p_id] Speichere ich die Datenbankid beim Laden Des Spielers.


    Und hier muss ich das dann nochmal Auslesen oder ?


    Code
    cache_get_value_name_int(0, "ID", pInfo[playerid][p_id]);
    Code
    forward ShowAuszug(playerid);
    public Showauszug(playerid){
       //Auszüge anzeigen lassen
       return 1;
    }
  • mysql_format(handle, query, sizeof query, "SELECT * FROM kontoauszug WHERE pdb_id = %i ORDER BY ID DESC LIMIT 15", pInfo[playerid][p_id]),
    mysql_pquery(handle, query, "ShowAuszug", "i", playerid);


    So musst das gemacht werden mit dem Query.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Im Public musst du nur das auslesen, was für dich relevant ist. Die Spieler-ID kennst du ja bereits, also brauchst du die auch nicht auslesen.


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'


  • public ShowAuszug(playerid)
    {
    new string[1024], row_count = 0, getter[MAX_PLAYER_NAME], cash = 0;
    cache_get_row_count(row_count);
    if(row_count == 1)
    {
    cache_get_field_name(row_count, "Profilname", getter);
    cache_get_value_name_int(row_count, "Summe", cash);
    format(string, sizeof string, "1 - Empfänger: %s, Summe: %i", getter, cash);
    }
    else if(row_count >= 2)
    {
    for(new i;i<row_count;i++)
    {
    cache_get_field_name(i, "Profilname", getter),
    cache_get_value_name_int(i, "Summe", cash),
    format(string, sizeof string, "\n%s%i - Empfänger: %s, Summe: %i", string, i, getter, cash);
    }
    }
    ShowPlayerDialog(playerid, DIALOG_AUSZUG, DIALOG_STYLE_LIST, "Deine letzten Bankauszüge", string, "Button1", "Button2");
    return 1;
    }


    //EDIT
    Habs mal verbessert, %i wurde ja gar nicht ausgefüllt sag ich mal.
    Probier dich mal an dem Quellcode zu orientieren und versuche so gut wie möglich auch nicht nur den Quellcode zu kopieren und einzufügen sondern ihn auch zu verstehen! :)

    Einmal editiert, zuletzt von Kasakow ()


  • public ShowAuszug(playerid)
    {
    new string[1024], row_count = 0, getter[MAX_PLAYER_NAME], cash = 0;
    cache_get_row_count(row_count);
    if(row_count == 0)
    {
    cache_get_field_name(row_count, "Profilname", getter);
    cache_get_value_name_int(row_count, "Summe", cash);
    format(string, sizeof string, "1 - Empfänger: %s, Summe: %i", getter, cash);
    }
    else if(row_count >= 1)
    {
    for(new i;i<row_count;i++)
    {
    cache_get_field_name(i, "Profilname", getter),
    cache_get_value_name_int(i, "Summe", cash),
    format(string, sizeof string, "\n%s%i - Empfänger: %s, Summe: %i", string, i+1, getter, cash);
    }
    }
    ShowPlayerDialog(playerid, DIALOG_AUSZUG, DIALOG_STYLE_LIST, "Deine letzten Bankauszüge", string, "Button1", "Button2");
    return 1;
    }


    Probiers mal so

  • Ja soweit aber als ich es umschreiben wollte hab ich was gemerkt.


    Typ = 0 ?
    Obwohl in der Datenbank 1 steht ?

  • Was ich vorhin eh schon fragen wollte, welche MySQL Include & Plugin Version benutzt du.
    Das kannst du in der Server_Log.txt einsehen.


    -> MEINE SQL INFO IN DER LOG <-


    //EDIT -> Hab grad gesehen gibt schon die r41-3, für die Leute die interesse haben. (Download)

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