Vehicle Loaden auf MySQL

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
  • Arbeite gerade an einem MySQL System.. Habe aber ein MySQL Problem beim Laden dieser!



    forward LoadAllVehicle();
    public LoadAllVehicle()
    {
    for(new i=0;i<MAX_VEHICLES;i++)
    {
    LoadVehicle(i);
    }
    }


    forward LoadVehicle(carid);
    public LoadVehicle(carid)
    {
    new data[256], bedienung[256], query[256],string[128];
    format(bedienung,sizeof(bedienung),"Carid='%s'",carid);
    format(query,sizeof(query),"SELECT * FROM cars WHERE %s",bedienung);
    mysql_query(query);
    mysql_store_result();
    if(mysql_num_rows())
    {
    new Float:X, Float:Y, Float:Z, Float:Angle,Typ,Farbe1,Farbe2;
    mysql_fetch_field("PosX",data);
    X = strval(data);
    mysql_fetch_field("PosY",data);
    Y = strval(data);
    mysql_fetch_field("PosZ",data);
    Z = strval(data);
    mysql_fetch_field("PosAngle",data);
    Angle = strval(data);
    mysql_fetch_field("Typ",data);
    Typ = strval(data);
    mysql_fetch_field("Farbe1",data);
    Farbe1 = strval(data);
    mysql_fetch_field("Farbe2",data);
    Farbe2 = strval(data);
    AddStaticVehicleEx(Typ, X,Y,Z, Angle, Farbe1,Farbe2, -1);
    format(string, sizeof(string), "Car (ID: %d) wurde geladen", carid);
    printf(string);
    }
    }

    Hier werden die Vehicle geladen. Ausgeführt wird dies durch LoadAllVehicle(); in OnGameModeInit.


    Bekomme folgenden MySQL Fehler:


    Code
    [Wed Nov 17 16:49:38 2010] Function: mysql_query executed: "SELECT * FROM cars WHERE Carid='ÌÜ°'" with result: "0".
    [Wed Nov 17 16:49:38 2010] Function: mysql_store_result executed with result: "1"
    [Wed Nov 17 16:49:38 2010] Function: mysql_num_rows executed with result: "".
  • Zitat

    [Wed Nov 17 16:49:38 2010] Function: mysql_query executed: "SELECT * FROM cars WHERE Carid='ÌÜ°'" with result: "0".


    Daraus solltest du erkennen können,dass du irgendwas falsch formatierst!
    format(bedienung,sizeof(bedienung),"Carid='%s'",carid);
    carid ist definitiv bei dir kein String,daher ist der Platzhalter %s auch falsch.Ersetzte es durch %d.


    Du kannst es aber auch direkt in query formatieren,verstehe nicht wieso du extra Variablen dafür erstellst.
    format(query,sizeof(query),"SELECT * FROM cars WHERE Carid='%d'",carid);

  • Ja ich bin schon ca. 2 Stunden dran da kann sowas mal passieren;) Danke dir;)