Beiträge von Edgar

    Du Held,
    genau um das Abspeichern geht es doch.
    Schau dir mal seine Funktion an wo er versucht einen Datenbankeintrag zu erstellen.
    Schon da benutzt er Update, was keinen Sinn macht.


    Einen Callback aufzurufen kann schon seinen Sinn haben ;). Wenn er was vor hat.


    Meld dich dann wieder, wenn es nicht funktioniert.


    Edit 1#: Text verbessert.

    updateCarColorToDB(carid, color1, color2){
    new query[256];
    format(query, sizeof query, "UPDATE `autos` SET `COLOR` = '%d', `COLOR2` = '%d' WHERE `ID` = '%d';", color1, color2, carid);
    mysql_function_query(dbhandle,query ,true, "carSavedToDB", "i", carid);
    return 1;
    }


    Versuch es mal mit dieser Funktion.


    COLOR und COLOR2 müssen geändert werden, je nachdem wie sie in deiner Datenbank heißen.

    An dieser Funktion
    mysql_query(query, (-1), (-1), MySQLConnections[0]);
    Darf nur die Variabel geändert werden, die du zum Connecten deiner Datenbank benutzt.


    In deinem Format benutzt du die UPDATE Funktion als INSERT, schau dir nochmal meinen Post zum Update.


    Du hast doch bestimmt eine Funktion wo du irgendwas in die MySQL Datenbank speicherst, schick
    die uns mal, dann können wir mal schauen wie deine Funktion aufgebaut wird.

    Benutze am besten Arrays und Schleifen.


    Beispiel:
    #define MAXVehicle 2 // Alle Fahrzeuge die in deinem Array sind
    enum vehicle_enum{vModelID, vVehName[180]}; //Eine Aufzählung von Variablen die genutzt werden können
    new Vehicle[MAXVehicle][vehicle_enum] =
    {
    {400, "Landstalker"},
    {401, "Bravura"}
    }
    So, möchtest du weitere Fahrzeuge hinzufügen musst du einfach die Zeile kopieren und die Informationen ändern.
    Aber achte darauf das nur die Letzte Zeile keinen Komma hat.


    Das kommt in dein Befehl rein


    new string[2000];
    for(new v; v < MAXVehicle; v++)
    {
    format(string, sizeof string, "%s%s\n", string, vehicle[v][vVehName]);
    }
    return ShowPlayerDialog(playerid, DIALOGID, DIALOG_STYLE_LIST, "Fahrzeugliste", string, "Spawnen", "Abbrechen");


    Unter OnDialogResponse:


    if(dialogid == DIALOGID) {
    CreateVehicle(vehicle[listitem][vModelID], ...);
    }


    Sollte funktionieren.


    new query[256];
    format(query, sizeof query, "UPDATE `TABELLE` SET `COLOR1` = '%d', `COLOR2` = '%d' WHERE `ID` = '%d';", COLORVAR, COLORVAR2, AUTOIDDATENBANK);
    mysql_query(query, (-1), (-1), MySQLConnections[0]);
    Oder

    new query[256];
    format(query, sizeof query, "UPDATE `TABELLE` SET `COLOR` = '%d;%d' WHERE `ID` = '%d';", COLORVAR, COLORVAR2, AUTOIDDATENBANK);
    mysql_query(query, (-1), (-1), MySQLConnections[0]);
    Mit dem 2. Prinzip musst du den String der zurückgegeben wird exploden auf dieses Zeichen ";".


    So funktioniert es mit meinem MySQL Plugin.

    format(query, sizeof query, "UPDATE `NAME DER TABELLE` SET `NAME DER SPALTE` = '%d;%d' WHERE `SORTIERUNG DER FAHRZEUGE ` = '%d';", VARIABLE VON COLORID1 , VARIABLE VON COLORID2, AUTOIDDATENBANK);
    Du solltest MySQL können.


    Edit #1: Erklärung

    Kann auch sein das du einer Facebook app die Rechte erteilt hast in deinen Namen zu posten, einfach mal alle Anwendungen entfernen die du nicht brauchst bzw kennst.

    Ich möchte dein Werk bzw. meine Bewertung keinen vorenthalten :).


    Signatur:



    Meinung
    Die Schriftart ist genau diese die mir gefällt, Agency FB vermute ich, benutze ich auch gerne :).
    Der Verlauf des Textes passt vollkommen zum Hintergrund, was genau aber am Hintergrund selbst erstellt
    bzw eingefügt wurde kann ich nicht beurteilen, dennoch ist es genau das was ich gerne hätte.


    Bewertung/ Fazit
    Die Schrift sowie der Verlauf passen zum Bild, das Hintergrundbild selbst gefällt mir sehr.
    Aber es wirkt mir leicht zu blass, daher 8 1/2 von 10 Punkten, weiter so.

    Hmm okay, wenn du möchtest kannst du mir per PN das schicken was du bereits hast und ich schau mir es genau an und werde es ggf. fixxen.

    Dann kannst du beides benutzen,
    wenn du es Rank abhängig machen möchtest,
    dass heißt, wenn in der Spalte "Admin" der Admin Rank gespeichert
    wird und man erst ab Rank 2 ein Befehl ausführen darf dann sieht das so aus:


    if(mysql_GetInt("accounts", "Admin", "Name", SpielerInfo[playerid][pName]) >= 2)
    oder
    if(mysql_GetInt("accounts", "Admin", "Name", SpielerInfo[playerid][pName]) > 1)

    Ah, okay habe die das falsch gesehen, mal so eine Frage, Gametext soll erscheinen wenn du Beifahrer bist oder? Oder auch wenn man Fahrer ist?

    Mach das mal so:
    new Text3D:playertextid[MAX_PLAYERS];
    if(isPlayerAnAdmin(playerid,2))
    {
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos( playerid, X, Y, Z );
    playertextid[playerid] = Create3DTextLabel("Moderator",LILA,X,Y,Z,40.0,0);
    Attach3DTextLabelToPlayer(playertextid[playerid],playerid, 0.0, 0.0, 0.0);
    return 1;
    }