MySql Fahrzeuge. Problem mit laden der Tabellenid´s

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
  • Moin Gemeinde,


    nach Tagen , die ich damit verbracht habe die Fahrzeuge aus der MysqlTabelle zu laden, habe ich es endlich geschafft.
    Fahrzeuge werden gespeichert und auch geladen.


    Nur beim Laden der Fahrzeuge gibt es ein Problem.
    Wie in der Console zu sehen ist, werden sie richtig geladen:



    Aber sobald ich im Script eine Abfrage mache, verschiebt sich die ID , und das zuletzt erstellete bzw. geladene Auto , hat die Variablen alle auf null stehen:


    Komme da einfach nicht weiter.


    Hier ist der Code:



    Code
    loadPlayerCars()
    {
      	new query[128];
    	format(query,sizeof(query),"SELECT * FROM autos");
      	mysql_function_query(dbhandle,query,true,"AutosLaden","");
    	printf("Autos werden gleich geladen");
    	return 1;
    }




    Code
    getFreeCarID()
    {
    	for(new i=0; i<sizeof(cInfo); i++)
    	{
    	    if(cInfo[i][cDbId]==0)return i;
    	}
    	return 0;
    }



    Wiegsagt, finde den Fehler nicht. vieleicht kann mir da ja jemand weiterhelfen.


    Mfg und vielen Dank im vorraus

    Einmal editiert, zuletzt von PigglWiggl ()

  • Ooops , sry den hatte ich vergessen ;)


    Code
    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    
     		new string[512];
    		format(string,sizeof(string),"DBID: %i | Autoart: %i |",cInfo[vehicleid][cDbId],cInfo[vehicleid][cVehArt]);
    		SendClientMessage(playerid,ORANGE,string);
    }
  • Also ich kann dir deinen Fehler erklären :)



    new id=getFreeCarID();

    Hier nimmst du ja die id um dein Array zu befüllen her :)
    Was ja eigentlich äquivalent der vehicleid sein sollte.


    Ist es aber nicht.
    vehicleids starten ab 1 und dein Array ab 0.
    Somit kommt es zu dieser Verschiebung :)


    Nutze einfach in deiner Abfrage vehicleid-1 und es sollte funktionieren :)

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S