MySQL R8 Problem

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
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,


    ich benutze für mein Gamemode die MySQL R8 Version. Ich möchte jetzt was übernehmen vom alten Gamemode was in R6 war, jedoch ist dies komplizierter und ich weiß nicht mehr weiter.



    stock FreeFrakCheck()
    {
    new bedin[128],query[128];
    for(new i;i<MAX_FRACTION_CARS;i++)
    {
    format(bedin,sizeof(bedin),"id='%i'",i);
    format(query,sizeof(query),"SELECT * FROM frakcars WHERE %s",bedin);
    mysql_query ( query );
    mysql_store_result();
    if(mysql_retrieve_row()==0) return i;
    }
    return 0;
    }



    ocmd:fcreate(playerid,params[])
    {
    new modelid,frakid,Float:PosX2,Float:PosY2,Float:PosZ2,Float:PosA2,color1,color2;
    if (SpielerInfo[playerid][pAdmin] <= 5) return SendClientMessage(playerid,COLOR_YELLOW,"Du besitzt nicht die Rechte!");
    if(sscanf(params,"dddd",modelid,frakid,color1,color2)) return SendClientMessage(playerid,0x00FF00FF,"Benutze: /fcreate [Model ID] [Fraktion ID] [Color 1] [Color 2])");
    new fc = FreeFrakCheck();
    new query[128];
    format(query,sizeof(query),"INSERT INTO frakcars (id) VALUES ('%d')",fc);
    mysql_query ( query );
    mysql_free_result();
    GetPlayerPos(playerid,PosX2,PosY2,PosZ2);
    GetPlayerFacingAngle(playerid,PosA2);
    FractionCars[fc][fVehid] = modelid;
    FractionCars[fc][fPos][0] = PosX2;
    FractionCars[fc][fPos][1] = PosY2;
    FractionCars[fc][fPos][2] = PosZ2;
    FractionCars[fc][fPos][3] = PosA2;
    FractionCars[fc][fCol][0] = color1;
    FractionCars[fc][fCol][1] = color2;
    FractionCars[fc][fFraction] = frakid;
    FractionCars[fc][fCarid] = CreateVehicle(FractionCars[fc][fVehid],FractionCars[fc][fPos][0],FractionCars[fc][fPos][1],FractionCars[fc][fPos][2],FractionCars[fc][fPos][3],FractionCars[fc][fCol][0],FractionCars[fc][fCol][1],-1);
    SendClientMessage(playerid,COLOR_YELLOW,"[FRAKTIONSCAR]: Du hast das Auto erfolgreich erstellt!");
    SendClientMessage(playerid,COLOR_YELLOW,"[FRAKTIONSCAR]: Vergiss aber nicht es später mit /fpark umzuparken!");
    SendClientMessage(playerid,COLOR_YELLOW,"[INFO]: Für weitere Befehle verwende /fcarinfo");
    PutPlayerInVehicle(playerid,FractionCars[fc][fCarid],0);
    SaveFractionCars();
    return 1;
    }



    Konntet ihr mir helfen und dies mal für MySQL R8 (Mit mysql_function_query()) schreiben? Ich komm echt nicht mehr weiter.


    Vielen Dank im Voraus!


    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.

  • Konntet ihr mir helfen und dies mal für MySQL R8 (Mit mysql_function_query()) schreiben? Ich komm echt nicht mehr weiter.


    Vielen Dank im Voraus!


    Liebe Grüße
    palwal



    Es ist unnötig bei deiner ersten funktion das ganze über mysql zu machen:



    stock FreeFrakCheck()
    {
    for(new i;i<MAX_FRACTION_CARS;i++)if(FractionCars[i][fVehid] == 0)return i;
    return 0;
    }


    Beim zweiten code:


    mysql_function_query(connectionHandler,query,"","");


    unter was du dein verbindunghandler gespeichert hast weiß ich jedoch nicht daher kann der name connectionHandler abweichen.
    connectionHandler ist der wert welcher mysql_connect zurück gibt den du in einer variabel speicherst.