SAMP MySQL

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
  • Huhu,
    Ich beginne gerade einen MySQL Gamemode nur habe da ne Frage!
    Also erstmal klar man muss Connecten, usw.

    new resultline[1024];
    new field[128];
    new query[256];
    samp_mysql_connect("127.0.0.1", "root", "");
    samp_mysql_select_db("test");
    samp_mysql_real_escape_string("SELECT * FROM members", query);
    samp_mysql_query(query);
    samp_mysql_store_result();
    while(samp_mysql_fetch_row(resultline)==1)
    {
    }

    Wie komme ich nun an das Ergebnis der Query in der While Schleife?


    MFG Pillepalle

  • Also würde printf("%s\n", resultline); in der While Schleife alle Werte ausgeben?

  • Jop is ja fast wie in PHP also net so schwer ich versteh nur noch net wie ich nachm splitten an den richtigen Wert komme


  • new resultline[1024];
    new result[256];
    new field[128];
    new query[256];
    new loop[256];
    new poop == 1;
    samp_mysql_connect("127.0.0.1", "root", "");
    samp_mysql_select_db("test");
    samp_mysql_real_escape_string("SELECT * FROM members", query);
    samp_mysql_query(query);
    samp_mysql_store_result();
    samp_mysql_fetch_row(result);
    if(samp_mysql_num_rows() == 1)
    {
    samp_mysql_strtok(loop, "|", result);
    while(samp_mysql_strtok(loop, "|", ""))
    {
    if(poop == 1) AccInfo[playerid][Level] = strval(loop);
    poop ++;
    }
    }


    Ich habs so gemacht bei mir. Funzt auch aber ich hatte manchmal Fehlauslesungen bzw. Fehlspeicherungen oder so.
    Ich hab den Fehler nie gefunden.
    Dann hab ich halt das Auslesen in eine stock gepackt wie:
    GetMySQLInt(name[],what[]);
    Und das speichern in :
    UpdateMySQLInt(name[],what[],intvar);

    Hoffe konnte damit helfen. Wenn du willst kann ich die Funktionen auch noch posten.

  • Was du da jetzt postet is glaub net so sinnvoll weil mysql_num_rows gibt ja die anzahl der ergebnisse zurück die bei dir 1 sien müssten wenn ich das richtig sehe ...

  • Hmm wenn die Anzahl 0 ist dann kann man nix auslesen oder ?
    und Rows sind reihen, nicht fields ...
    also wenn ich jetzt nach den fields frage wäre 1 falsch weil ich untendran noch mehr auslesungen hab.
    aber bei Rows: wenn Rows mehr als 1 wäre, dann wärens sozusagen mehrere Userdaten und sonst würds da doch Problem geben.
    und dann sollte da nicht noch ne while schleife laufen oder kP ...

  • ah ok
    /edit
    new resultline[1024];
    new ergebnis;
    new field[128];
    new query[256];
    samp_mysql_real_escape_string("SELECT * FROM cars", query);
    samp_mysql_query(query);
    samp_mysql_store_result();
    while(samp_mysql_fetch_row(resultline)==1)
    {
    samp_mysql_strtok(field, "|", resultline);
    while(samp_mysql_strtok(field, "|", "")==1)
    {
    ergebnis = 1;
    }
    }
    return ergebnis;
    }
    Hier muss schon nen Fehler drinne sein mir crahsed der Server ich finde aber keinen!

    Einmal editiert, zuletzt von pillepalle ()