Hallo. Meine Daten vom auto werden nicht mehr in der DB gespeichert. Habe mal mein log angehangen
Autos werden nicht mehr gespeichert
- Linatokimux
- Geschlossen
- Erledigt
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
-
-
Ich habe letztens meine magische Zauberkugel verloren - tut mir leid.
Wie wäre es mit Zeilen?
So kann hier definitiv keine Seele helfen.
-
Jo kommen.
Welche brauchst du? -
Alle, die was mit dem System zu tun haben. Dann brauchen wir eher die Speicherfunktion
-
Spoiler anzeigen public carSavedToDB(carid)
{
cInfo[carid][db_id]= cache_insert_id(dbhandle);
return 1;
}
saveCarToDB(playerid,carid)
{
new query[128]; //besitzer = SpielerID //8 //7 FAIL
format(query,sizeof(query),"INSERT INTO autos (besitzer,model,x,y,z,r,kmstand,id) VALUES ('%i','%i','%f','%f','%f','%f','%f','%f')",sInfo[playerid][db_id],cInfo[carid][model],cInfo[carid][c_x],cInfo[carid][c_y],cInfo[carid][c_z],cInfo[carid][c_r],cInfo[playerid][kmstand],sInfo[playerid][db_id]);
mysql_function_query(dbhandle,query,true,"carSavedToDB","i",carid);
return 1;
}bidde
-
*Facepalm*
Das MrMonat TuT-Script downloaden und dann nichtmal die richtigen, bzw. WICHTIGEN Zeilen schicken..
Jetzt nochmal: Alle Callbacks, Enums, etc. rund um das Fahrzeug posten.
-
ich habs NICHT gedownloaded
Spoiler anzeigen [pwn]createPlayerCar(playerid,modelid,Float:x,Float:y,Float:z,Float:r)
{
for(new i=0; i<sizeof(cInfo); i++)
{
if(cInfo[i][id_x]!=0)continue;
cInfo[i][besitzer]=sInfo[playerid][db_id];
GetPlayerName(playerid,cInfo[i][besitzer],MAX_PLAYER_NAME);
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][kmstand] = 0;
cInfo[i][id_x] = CreateVehicle(modelid,x,y,z,r,000,000,-1);
new string[128],pIDname[MAX_PLAYER_NAME];
GetPlayerName(playerid,pIDname,sizeof(pIDname));
format(string,sizeof(string),"Das Auto NR[%i] wurde für %s erstellt",i,pIDname);
SendClientMessageToAll(RED,string);
saveCarToDB(playerid,i);
return 1;
}
return 1;
}Spoiler anzeigen ocmd:cc(playerid,params[])
{
if(!isAdmin(playerid,4))return SendClientMessage(playerid,RED,"Du hast keine Rechte dafür!");
new mID,pID;
if(sscanf(params,"ui",pID,mID)) return SendClientMessage(playerid,RED,"INFO: /cc [playerid] [VEHICLE ID]");
if(mID <400 || mID > 611) return SendClientMessage(playerid,RED,"Ungültige ID!");
new Float:xc,Float:yc,Float:zc,Float:rc;
GetPlayerPos(pID,xc,yc,zc);
GetPlayerFacingAngle(pID,rc);
createPlayerCar(pID,mID,xc,yc,zc,rc);
return 1;
}enum playerInfo{
eingeloggt,
level,
db_id,
fraktion,
rang,
alevel,
spawnchange,
PaydayTime,
Payday,
autoschein,
rollerschein,
geld,
adname,
pGesperrt,
premiumlevel,
premiumzeit[2],
premiumGivenBy[MAX_PLAYER_NAME],
premiumGivenTS,
premiumSys,
};
[/expander]Spoiler anzeigen
getFreeCarID()
{
for(new i=0; i<sizeof(cInfo); i++)
{
if(cInfo[i][id_x]==0)return i;
}
return 0;
}
public OnPlayerCarsLoad(playerid) //Autos laden ^^
{
new num_fields,num_rows;
cache_get_data(num_rows,num_fields,dbhandle);
if(!num_rows)return 1;
for(new i=0; i<num_rows; i++)
{
new id=getFreeCarID();
cInfo[id][model]=cache_get_field_content_int(i,"model",dbhandle);
cInfo[id][besitzer]=cache_get_field_content_int(i,"besitzer",dbhandle);
cInfo[id][c_x]=cache_get_field_content_float(i,"x",dbhandle);
cInfo[id][c_y]=cache_get_field_content_float(i,"y",dbhandle);
cInfo[id][c_z]=cache_get_field_content_float(i,"z",dbhandle);
cInfo[id][c_r]=cache_get_field_content_float(i,"r",dbhandle);
cInfo[id][db_id]=cache_get_field_content_int(i,"id",dbhandle);
cInfo[id][kmstand]=cache_get_field_content_float(i,"kmstand",dbhandle);
cInfo[id][id_x]=CreateVehicle(cInfo[id][model],cInfo[id][c_x],cInfo[id][c_y],cInfo[id][c_z],cInfo[id][c_r],-1,-1,-1);
}
return 1;
}Spoiler anzeigen loadPlayerCars(playerid) //Autos laden Funktion
{
new query[128];
format(query,sizeof(query),"SELECT * FROM autos WHERE besitzer='%i'",sInfo[playerid][db_id]);
mysql_function_query(dbhandle,query,true,"OnPlayerCarsLoad","i",playerid);
return 1;
}[/expander][/expander] [/expander] [/expander]Spoiler anzeigen Spoiler anzeigen Spoiler anzeigen Spoiler anzeigen Laden funktioniert nur speichern nichtSpoiler anzeigen Spoiler anzeigen Spoiler anzeigen Spoiler anzeigen Spoiler anzeigen public OnPlayerDisconnect(playerid, reason)
{
for(new i=0; i<sizeof(cInfo); i++)
{
if(cInfo[i][id_x]==0) continue;
if(cInfo[i][besitzer]!=sInfo[playerid][db_id])continue;
GetVehiclePos(cInfo[i][id_x],cInfo[i][c_x],cInfo[i][c_y],cInfo[i][c_z]);
GetVehicleZAngle(cInfo[i][id_x],cInfo[i][c_r]);
new query[128];
format(query,sizeof(query),"UPDATE autos SET x='%f',y='%f',z='%f',r='%f',kmstand='%f' WHERE id='%i'",cInfo[i][c_x],cInfo[i][c_y],cInfo[i][c_z],cInfo[i][c_r],cInfo[i][kmstand],sInfo[playerid][db_id]);
mysql_function_query(dbhandle,query,false,"","");
DestroyVehicle(cInfo[i][id_x]);
cInfo[i][id_x]=0;
} -
Ähm, da sehe ich keinen Fehler. Laut den MySQL Logs wird alles erfolgreich verarbeitet.
Was genau funktioniert am Speichern nicht?
E:
Beim formatiern letzter Eintrag falsch.Ersetze durch cInfo[i][DEINE CARID VARIABLE]
E2: Fail^^
-
Ja also es wird die ganze Reihe nicht gespeichert
Meine DB sieht ja so aus
"Besitzer" "ModelID" "X" "Y" "Z" "kmstand" "id"
und es wird halt nix gespeichert
weder bei einem neu gespawnten Auto noch wenn ich das alte verschiebe (wegfahre)E: Geht wieder
Grund: KA wunderhände -
breadfish.de
Hat das Thema geschlossen.