[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
  • Okey das Funktioniert.


    Aber habe immernoch das ?

    Code
    [00:09:18] [ERROR] mysql_format: no value for specifier '%d' passed


    mysql_format(handle, string, sizeof(string), "UPDATE Privatcar SET Fx = '%f', Fy = '%f', Fz = '%f', Fr = '%f', Color1 = '%d', Color2 = '%d', Kilometer = '%d',", pCar[i][pc_x], pCar[i][pc_y], pCar[i][pc_z], pCar[i][pc_r], pCar[i][pc_color1], pCar[i][pc_color2], pCar[i][pc_kilometer]);
    mysql_format(handle, string, sizeof(string), "%s Spoiler = '%d', Hood = '%d', Roof = '%d', Sideskirt = '%d', Lamps = '%d', Nitro = '%d', Exhaust = '%d',", string, pCar[i][pc_Spoiler], pCar[i][pc_Hood], pCar[i][pc_Roof], pCar[i][pc_Sideskirt], pCar[i][pc_Lamps], pCar[i][pc_Nitro], pCar[i][pc_Exhaust]);
    mysql_format(handle, string, sizeof(string), "%s Wheels = '%d', Stereo = '%d', Hydraulics = '%d', Frontb = '%d', Rearb = '%d', Ventr = '%d', Ventl = '%d' ", string, pCar[i][pc_Wheels], pCar[i][pc_Stereo], pCar[i][pc_Hydraulics], pCar[i][pc_Frontb], pCar[i][pc_Rearb], pCar[i][pc_Ventr], pCar[i][pc_Ventl]);
    mysql_format(handle, string, sizeof(string), "%s Tank = '%f', Kraftstoffart = '%d' WHERE `ID` = '%d' ",string,pCar[i][pc_Tank], pCar[i][pc_Kraftstoffart], pCar[i][pc_dbid]);
    mysql_pquery(handle, string)



    Mit Handy geantwortet.

  • Beitrag von reaL. ()

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: Übersehen habe beim Formatieren strval genommen ().
  • https://pastebin.com/rBuvmVMK


    Wenn ich in ein ArmyCar einsteige & Army bin, bekomme ich auch die nachricht, dass ich nicht in ein ArmyCar einsteigen kann,


    andersrum genauso. Wenn ich in ein SWAT Car als Armyler einsteige bekomme ich beide nachrichten.


    Probiere schon seit ner halben stunde rum, mal mit else mal ohne return 1 da und da,


    / Das ding ist, wenn ichs mit else if versuche ( da kann ichs auch umschreiben wie ich will


    error 001: expected token: ";", but found "if" bekomme ich den Fehler bei Zeile 42.

  • Dann bekomme ich nur die Nachricht, dass ich You entered a A.R.M.Y Vehicle ich in ein Army Vehicle eingestiegen bin, da klappt auch alles.



    Bei SWAT ist es genauso, nur halt mit der Nachricht, dass ich in ein SWAT Vehicle eingestiegen bin.



    Aber ja, wenn ich in ein z.B Army Vehicle einsteige aber SWAT bin bekomme ich beide Fehlermeldungen (Used by US Army, Used by SWAT Team) sonst nichts.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Also wenn ich es Richtig verstanden habe dann steigt du als Army in ein Swat Car einsteigt kriegt du die Nachricht dass >


    Es ein Army Vehicle ist und ich nicht einsteigen kann und, dass es ein SWAT Vehicle ist und ich nicht einsteigen kann


    Also ja

  • Bin mir zwar nicht sicher aber Probiere es mal so


  • Sry war eh Falsch.


  • @JacLos

    if(vInfo[i][classcar] == 2)
    {
    if(PlayerInfo[playerid][FracID] == 3)
    SCM(playerid, COLOR_LIGHTBLUE, "You entered a SWAT Vehicle");
    else
    {
    SCM(playerid, COLOR_LIGHTBLUE, "This Car is used by the SWAT Team you can't drive it!");
    TogglePlayerControllable(playerid, false);
    TogglePlayerControllable(playerid, true);
    }
    return 1;
    }
    else if(vInfo[i][classcar] == 3)
    {
    if (PlayerInfo[playerid][FracID] == 4)
    SCM(playerid, 0xFF7800FF, "You entered a A.R.M.Y Vehicle");
    else
    {
    SCM(playerid, 0xFF7800FF, "This Car is used by the US A.R.M.Y you can't drive it!");
    TogglePlayerControllable(playerid, false);
    TogglePlayerControllable(playerid, true);
    }
    return 1;
    }

  • Moin ...


    Ich hab ein problem mit der SHA256_PassHash Funktion ... Wenn sich ein Spieler Registriert erstelle ich einen salt und speicher diesen in die Datenbank ... Mit dem Salt erstelle ich ein Passwort welches ich als Password speichere ...


    Beim Login Hashe ich die Eingabe vom Spieler (das Passwort) ... Durch das Passwort komme ich auch wieder auf den richtigen salt der in der Datenbank steht ... mit dem Salt hashe ich wieder um auf das Passwort zu kommen... Ich bekomme allerdings nicht den gleichen Wert raus der in der datenbank steht ... immer ein anderer (pro relog)...


    hat jemand eine Idee?


    Kurzfassung: beim Login: der Salt stimmt überein nur das Passwort hinterher nicht ...


    MfG
    XonarZ

  • Okay ich erklärs dieses mal mit Code...


    Aktion beim "Registrieren:"



    Code
    format(salt, sizeof(salt), "%s%s%s", registername, registerpw, registermail);
    SHA256_PassHash(salt, salt, salt, 128);
    SHA256_PassHash(password, salt, password, 128);

    Salt wird in die Datenbank eingetragen und das password auch also beides...


    und so sieht es beim Login aus:



    Code
    format(salt, sizeof(salt), "%s%s%s", loginname, inputtext, dbmail);
    						SHA256_PassHash(salt, salt, salt, 128);
    						printf("%s", salt);
    						printf("%s", inputtext);
    						SHA256_PassHash(inputtext, salt, loginpw, 128);
    						printf("%s", loginpw);

    die daten loginname, inputtext, dbmail sind korrekt ... Der hier Formatierte Salt entspricht dem aus der Datenbank ... nur das Passwort ist nicht gleich...


    MfG
    XonarZ

  • Ich glaube du hast das prinzip von Salt nicht so ganz verstanden.


    Probier es mal so:

    // Registrieren
    new salt[64], hash[64 + 1];
    for(new i = 0; i < sizeof(salt); i++)
    salt[i] = random(2) ? (random(26) + (random(2) ? 'a' : 'A')) : (random(10) + '0');
    SHA256_PassHash(registerpw, salt, hash, sizeof(hash));
    // -- Variablen hash & salt in Datenbank speichern



    // Login
    // -- Variablen hash & salt aus Datenbank holen
    new hash[64 + 1];
    SHA256_PassHash(inputtext, SALT_AUS_DATENBANK, hash, sizeof(hash));
    if (!strcmp(hash, HASH_AUS_DATENBANK))
    {
    // Erfolgreicher Login
    }


  • Jemand ne Idee worans liegt? Finde hier den Fehler selbst mit SQL Simulation nicht