Beiträge von RaPTiiC

    Warum wird der alte Pickup nicht gelöscht genau so wie das Textlabel in meiner SQL log steht folgendes drin falls es damit zusammenhängen kann:

    Code
    [17:41:46] [ERROR] error #1064 while executing query "UPDATE users_houses SET besitzer 'Frank_Escobar', h_preis='150' WHERE id='1'": You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''Frank_Escobar', h_preis='150' WHERE id='1'' at line 1


    meine query dazu:

    Code
    saveHouse(id)
    {
        new query[128];
        format(query, sizeof(query), "UPDATE users_houses SET besitzer '%s', h_preis='%i' WHERE id='%i'", hInfo[id][h_besitzer], hInfo[id][h_preis],  hInfo[id][h_id]);
        mysql_pquery(handle, query);
        return 1;

    Mein CMD:Buyhouse indem saveHouse aufgerufen wird:


    Perfekt hat mit dem geklappt hatte es mal so ähnlich versuch (wie MrMonat im Tutorial) aber leider hatte ich keinen erfolg aber hab es jetzt abgeändert das Public OnHausesLoad() sieht jetzt so aus (falls es jemand gebrauchen kann der auch das Haussystem benötigt :D)

    Kaliber OnHausesLoad wird so aufgerufen unter OnGameModeInit:

    Code
        new query[256];
        format(query,sizeof(query)," SELECT * FROM users_houses");
        mysql_pquery(handle, query, "OnHausesLoad");

    das Public ist dieses:

    und die Struktur meiner DB sieht so aus:

    pasted-from-clipboard.png

    Hey bin dabei ein Haussystem zu erstellen, jedoch habe ich ein Problem wenn ich die Häuser laden lasse, wird nicht angezeigt das Spieler XYZ das Haus besitzt wenn es als VARCHAR in der DB hinterlegt ist.

    meine Häuser laden funktion:


    und falls nötig mein hausEnum

    Daran lag es perfekt!


    jedoch sehe ich gerade das es zwei verschiedene besitzer sind und hatte vorher 2 Fahrzeuge erstellt, diese aber wieder raus gelöscht aus der DB da es ganz falsch war, da war die vehID aufeinmal die colorid dann hab ich die beiden fahrzeuge gelöscht, im script abgeändert

    aber jetzt startet es nicht bei 0 sondern bei 3?


    hier ein bild zum verständnis :D


    Fehler in der Tabelle.png


    bei ID 3 hab ich eigentlich auch beide farben auf 0 0 gesetzt

    bei ID 4 hab ich beide auf 1 1 gesetzt

    Hab ich geändert jedoch immer noch errors im mysql log und nichts in der DB hinterlegt


    Code
    [13:42:40] [plugins/mysql] error #1064 while executing query "INSERT INTO users_cars (besitzer,model,color,color2,x,y,z,r) VALUES ('1', '1', '411', '0', '0.000000', '1719.357543', '-1269.44": You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''-1269.44' at line 1
    [13:42:43] [plugins/mysql] error #1064 while executing query "INSERT INTO users_cars (besitzer,model,color,color2,x,y,z,r) VALUES ('2', '1', '411', '1', '0.000000', '1713.944946', '-1269.95": You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''-1269.95' at line 1

    Andosius ah danke, hab es geändert funktioniert leider dennoch nicht


    Code
    [13:11:49] [WARNING] mysql_connect: no password specified
    [13:12:08] [ERROR] error #1064 while executing query "INSERT INTO users_cars (besitzer,model,color,color2,x,y,z,r) VALUES ('1', '411','0','0','1736.464355','-1269.989990','13.544546": You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''13.544546' at line 1
    [13:12:12] [ERROR] error #1064 while executing query "INSERT INTO users_cars (besitzer,model,color,color2,x,y,z,r) VALUES ('1', '411','2','2','1728.295898','-1268.436767','13.544373": You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''13.544373' at line 1

    So wie ich es verstehe benutze ich

    Code
    mysql_pquery(handle, query);

    das hier falsch :D


    /edit


    Zeile :

    SQL
    INSERT INTO users_cars (besitzer,model,x,y,z,r)


    zu

    SQL
    INSERT INTO users_cars (besitzer,model,color,color2,x,y,z,r)

    geändert

    Andosius danke für den Ratschlag und die Aufklärung, jetzt hab ich es umgeändert das die p_id genommen wird (ID des Spielers in der DB)


    Mein CMD fürs Fahrzeug für einen Spieler erstellen sieht derzeit so aus


    dazu die createPlayerCar funktion



    dazu die saveCarToDB:


    Code
    saveCarToDB(carid)
    {
        new query[128];
        new pID;
        format(query,sizeof(query),"INSERT INTO users_cars (besitzer,model,x,y,z,r) VALUES ('%i','%i','%i','%i','%f',%f',%f',%f')",PlayerInfo[pID][p_id], carInfo[carid][model],carInfo[carid][car_farbe],carInfo[carid][car_farbe2], carInfo[carid][c_x],carInfo[carid][c_y],carInfo[carid][c_z],carInfo[carid][c_r]);
        mysql_pquery(handle, query);
        return 1;
    }



    Und trotzdem bekomme ich bei der Zeile 574 die warnings:

    3x number of arguments does not match definition

    Zeile ist markiert

    Hey ich hab ein wahrscheinlich eher kleines Problem aber bin mir da nicht zu 100% sicher, ich nutze die Tutorials auf YouTube von MrMonat da er natürlich eine andere MySQL version nutzt (älter) gibt es ja etwas verschiedene Dinge und schaue mir dann bspw. mein Register/Login System von Jeffry an um ein paar Hilfestellungen zu haben, jedoch bisher ohne erfolg


    Code
    saveCarToDB(playerid, carid)
    {
        new query[128];
        format(query,sizeof(query),"INSERT INTO users_cars (besitzer,model,x,y,z,r) VALUES ('%e','%i','%f',%f',%f',%f')",PlayerInfo[playerid][pName], carInfo[carid][model], carInfo[carid][c_x],carInfo[carid][c_y],carInfo[carid][c_z],carInfo[carid][c_r]);
        mysql_pquery(handle, query, "", "", "");
        return 1;
    }


    Ich möchte das die Fahrzeuge einem Besitzer Namen zugeordnet wird und keiner ID weil wie wir wissen hat man bei jedem "Relog" mit mehreren Usern auf dem Server zu 90% eine neue Playerid


    /edit


    Wollte eigentlich auch noch die Farben in der DB speichern aber dazu muss ich das erstmal im Script schaffen bekomme ständige local variable XYZ shadows a variable at a preceding level

    Das ist das was raus kam nachdem ich einen befehl eingeben habe:


    Das sind die einzigen Includes die ich nutze

    C
    #include <a_samp>
    #include <sscanf2>
    #include <a_mysql>
    #include <Pawn.CMD>


    Habe jetzt fast alle Befehle durch und es funktioniert nicht ein einziger OnPlayerCommandText ist ersetzt worden durch die Funktion die du mir gegeben hast, wenn ich einen Befehl eingebe den es nicht gibt kommt ebenfalls nichts :D


    Das ist meine Server.cfg

    sind die letzten logs hab die vorherigen mal gelöscht


    Nachdem ich ein Befehl eingegeben habe der eigentlich existiert danach direkt der disconnect meinerseits (gewollt)


    Hoffe ich mache echt nichts falsch :D