Denkfehler Behebung: Carsystem

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
  • Seit dem ich die Farbe abspeichere funkt das irgendwie nicht mehr es wird geladen also muss der Fehler beim speichern bzw. beim eintragen in die Datenbank sein. Ich habe schon geschaut aber mir fehlt einfach nichts auf...


    Enum:


    //Cardatenbank
    enum carEnum{
    id_x,
    besitzer,
    model,
    Float:c_x,
    Float:c_y,
    Float:c_z,
    Float:c_r,
    farbe1,
    farbe2,
    db_id


    }
    new cInfo[50][carEnum];


    Der andere Mist: ^^


    public CarSavedToDB(carid)
    {
    cInfo[carid][db_id]=cache_insert_id(dbhandle);
    return 1;
    }


    saveCarToDB(playerid,carid)
    {
    new query[128];
    format(query,sizeof(query),"INSERT INTO car (besitzer,model,x,y,z,r,farbe1,farbe2) VALUES ('%i','%i','%f','%f','%f','%f','%i','%i')",pInfo[playerid][db_id],cInfo[carid][model],cInfo[carid][c_x],cInfo[carid][c_y],cInfo[carid][c_z],cInfo[carid][c_r],cInfo[carid][farbe1],cInfo[carid][farbe2]);
    mysql_function_query(dbhandle,query,true,"CarSavedToDB","i",carid);
    return 1;
    }


    createPlayerCar(playerid,modelid,Float:x,Float:y,Float:z,Float:r,farb2,farb2)
    {
    for(new i=0; i<sizeof(cInfo); i++)
    {
    if(cInfo[i][id_x]!=0)continue;
    cInfo[i][besitzer]=pInfo[playerid][db_id];
    cInfo[i][c_x]=x;
    cInfo[i][c_y]=y;
    cInfo[i][c_z]=z;
    cInfo[i][c_r]=r;
    cInfo[i][model]=modelid;
    cInfo[i][farbe1]=farb1;
    cInfo[i][farbe2]=farb2;
    cInfo[i][id_x] = CreateVehicle(modelid,x,y,z,r,farb1,farb2,-1);
    new string[128];
    format(string,sizeof(string),"Das Auto cInfo[%i] wurde erstellt.",i);
    SendClientMessageToAll(rot,string);
    saveCarToDB(playerid,i);
    return 1;
    }
    return 1;
    }


    Das Auto lasse ich mit einem Befehl erstellen.


    Befehl:


    ocmd:mveh(playerid,params[])
    {
    if(pInfo[playerid][adminrang]==4)return SendClientMessage(playerid,rot,"Du bist kein Admin!");
    new mID,pID,color1,color2;
    if(sscanf(params,"uiii",pID,mID,color1,color2))return SendClientMessage(playerid,weiss,"Benutze: /mveh [PlayerID] [ModelID] [Farbe1] [Farbe2]");
    if(mID<400||mID>611)return SendClientMessage(playerid,rot,"Die Fahrzeug Id muss von 400 - 611 sein.");
    new Float:xc,Float:yc,Float:zc,Float:rc;
    GetPlayerPos(pID,xc,yc,zc);
    GetPlayerFacingAngle(pID,rc);
    createPlayerCar(pID,mID,xc,yc,zc,rc,color1,color2);
    return 1;
    }


    Datenbank:



    Unwichtige Teile (teils von meinem Systemen) hab ich draußen gelassen.


    Bitte um Hilfe ich hänge irgendwo.

    - heftig abhängig von Karli Kugelblitz Choco Drinks

  • Zitat

    Seit dem ich die Farbe abspeichere funkt das irgendwie nicht mehr es wird geladen also muss der Fehler beim speichern bzw. beim eintragen in die Datenbank sein.


    Den unterstrichenen Teil sehe ich in deinem Post nicht (UPDATE).
    Ob das Eintragen klappt (INSERT) kannst du doch ganz einfach selber prüfen: /mveh ausführen, zu phpmyadmin wechseln (wahrscheinlich ohne vorher den Server zu Verlassen) und schauen ob der Eintrag in der Datenbank korrekt ist.

  • Das hättest dann oben wenigstens auch erwähnen können :-0.
    Dann sollte es mit dem SQL Kommando nicht klappen. Eigentlich solltest du dann aber Fehlern in der server_log.txt erhalten.
    Gut möglich das query zu klein ist.
    saveCarToDB(playerid,carid)
    {
    new query[160];//bischen größer
    format(query,sizeof(query),"INSERT INTO car (besitzer,model,x,y,z,r,farbe1,farbe2) VALUES ('%i','%i','%f','%f','%f','%f','%i','%i')",pInfo[playerid][db_id],cInfo[carid][model],cInfo[carid][c_x],cInfo[carid][c_y],cInfo[carid][c_z],cInfo[carid][c_r],cInfo[carid][farbe1],cInfo[carid][farbe2]);
    printf("query='%s', len = %d",query,strlen(query) );
    mysql_function_query(dbhandle,query,true,"CarSavedToDB","i",carid);
    return 1;
    }