Dynamisches System Zahlen in die DB Eintragen | 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 ihr Brotfische,


    ich schreibe derzeit ein Dynamisches Tankstellensystem, läuft auch sehr gut bis auf das falsche Zahlen in die Datenbank eingetragen werden wenn eine neue Tankstelle per Befehl erstellt wird.


    Problemcode (Auszug):


    new sqlstring[400];
    new Float:playerX, Float:playerY, Float:playerZ;
    new Towner[100], Tbeschreibung[128], Tbuyprice[10], Tlevel[1], Texp[1], Tkasse[1], Tproducts[3], Tmaxproducts[3], Tfillprice[3];
    GetPlayerPos(playerid, playerX, playerY, playerZ);
    format(Towner, sizeof(Towner), "Niemand");
    format(Tbeschreibung, sizeof(Tbeschreibung), "Neue Tankstelle");
    format(Tbuyprice, sizeof(Tbuyprice), "1200000");
    format(Tlevel, sizeof(Tlevel), "0");
    format(Texp, sizeof(Texp), "0");
    format(Tkasse, sizeof(Tkasse), "0");
    format(Tproducts, sizeof(Tproducts), "500");
    format(Tmaxproducts, sizeof(Tmaxproducts), "500");
    format(Tfillprice, sizeof(Tfillprice), "60");

    format(sqlstring, sizeof(sqlstring), "INSERT INTO tanken (owner, beschreibung, posX, posY, posZ, buyprice, level, exp, kasse, products, maxproducts, benzinpreis) VALUES ('%s', '%s', '%f', '%f', '%f', '%d', '%i', '%i', '%i', '%d', '%d', '%d')", Towner, Tbeschreibung, playerX, playerY, playerZ, Tbuyprice, Tlevel, Texp, Tkasse, Tproducts, Tmaxproducts, Tfillprice);
    mysql_query(sqlstring);
    mysql_free_result();


    Und so wird as in der Datenbank eingetragen:

    ...die Zahlen die in der Datenbank eingetragen werden sollen, stimmen nicht met dem was eingetragen ist überein.
    Wie ändere ich das?


    Liebe Grüße
    palwal

    Wer PALWAL-Sternchen vergibt, bekommt aus Prinzip ein Like 😏


    @palwal Donald Trump ist einer der besten Präsidenten welche die USA je hatte, meine Meinung.

  • Für Zahlen solltest du strmid verwenden das formatiert den String in Integer Werte


    new lol[2];
    format(lol,sizeof(lol),"2");
    new lol2 = strmid(lol);


    Nun ist das ein Integer :)