14.07.2013, 15:39
(
Last edited by devil shill; 14/07/2013 at 04:52 PM.
Reason: Updated Sql Updates
)
Hey Guys,
Im in need of some help here i have a problem that my server isnt saving the player purchased vehicles
may someone can figure it out if theres something wrong with the update string's
Here are the Update Formats.
Im in need of some help here i have a problem that my server isnt saving the player purchased vehicles
may someone can figure it out if theres something wrong with the update string's
Code:
SQL_UpdateString(index, "PlayerVehicleModel1",PlayerInfo[playerid][PlayerVehicleModel1]); SQL_UpdateFloat(index, "PlayerVehicleFacing1",PlayerInfo[playerid][PlayerVehicleFacing1]); SQL_UpdateInt(index, "PlayerVehicle1Color",PlayerInfo[playerid][pPlayerVehicle1Color]); SQL_UpdateInt(index, "PlayerVehicle1Color2",PlayerInfo[playerid][pPlayerVehicle1Color2]); SQL_UpdateFloat(index, "PlayerVehiclePosX1",PlayerInfo[playerid][PlayerVehiclePosX1]); SQL_UpdateFloat(index, "PlayerVehiclePosY1",PlayerInfo[playerid][PlayerVehiclePosY1]); SQL_UpdateFloat(index, "PlayerVehiclePosZ1",PlayerInfo[playerid][PlayerVehiclePosZ1]); SQL_UpdateInt(index, "PlayerVehicle1PaintJob",PlayerInfo[playerid][PlayerVehicle1PaintJob]); SQL_UpdateInt(index, "PlayerVehicle1Nos",PlayerInfo[playerid][PlayerVehicle1Nos]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot0",PlayerInfo[playerid][PlayerVehicle1ModSlot0]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot1",PlayerInfo[playerid][PlayerVehicle1ModSlot1]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot2",PlayerInfo[playerid][PlayerVehicle1ModSlot2]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot3",PlayerInfo[playerid][PlayerVehicle1ModSlot3]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot4",PlayerInfo[playerid][PlayerVehicle1ModSlot4]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot5",PlayerInfo[playerid][PlayerVehicle1ModSlot5]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot6",PlayerInfo[playerid][PlayerVehicle1ModSlot6]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot7",PlayerInfo[playerid][PlayerVehicle1ModSlot7]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot8",PlayerInfo[playerid][PlayerVehicle1ModSlot8]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot9",PlayerInfo[playerid][PlayerVehicle1ModSlot9]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot10",PlayerInfo[playerid][PlayerVehicle1ModSlot10]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot11",PlayerInfo[playerid][PlayerVehicle1ModSlot11]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot12",PlayerInfo[playerid][PlayerVehicle1ModSlot12]); SQL_UpdateInt(index, "PlayerVehicle1ModSlot13",PlayerInfo[playerid][PlayerVehicle1ModSlot13]); SQL_UpdateInt(index, "VehLock1",PlayerInfo[playerid][pVehLock1]); SQL_UpdateInt(index, "VehLocked1",PlayerInfo[playerid][pVehLocked1]); SQL_UpdateInt(index, "PlayerVehicle1Interior",PlayerInfo[playerid][PlayerVehicle1Interior]); SQL_UpdateInt(index, "PlayerVehicle1VirWorld",PlayerInfo[playerid][PlayerVehicle1VirWorld]); SQL_UpdateInt(index, "PlayerVehicleModel2",PlayerInfo[playerid][PlayerVehicleModel2]); SQL_UpdateFloat(index, "PlayerVehicleFacing2",PlayerInfo[playerid][PlayerVehicleFacing2]); SQL_UpdateInt(index, "PlayerVehicle2Color",PlayerInfo[playerid][pPlayerVehicle2Color]); SQL_UpdateInt(index, "PlayerVehicle2Color2",PlayerInfo[playerid][pPlayerVehicle2Color2]); SQL_UpdateFloat(index, "PlayerVehiclePosX2",PlayerInfo[playerid][PlayerVehiclePosX2]); SQL_UpdateFloat(index, "PlayerVehiclePosY2",PlayerInfo[playerid][PlayerVehiclePosY2]); SQL_UpdateFloat(index, "PlayerVehiclePosZ2",PlayerInfo[playerid][PlayerVehiclePosZ2]); SQL_UpdateInt(index, "PlayerVehicle2PaintJob",PlayerInfo[playerid][PlayerVehicle2PaintJob]); SQL_UpdateInt(index, "PlayerVehicle2Nos",PlayerInfo[playerid][PlayerVehicle2Nos]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot0",PlayerInfo[playerid][PlayerVehicle2ModSlot0]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot1",PlayerInfo[playerid][PlayerVehicle2ModSlot1]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot2",PlayerInfo[playerid][PlayerVehicle2ModSlot2]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot3",PlayerInfo[playerid][PlayerVehicle2ModSlot3]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot4",PlayerInfo[playerid][PlayerVehicle2ModSlot4]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot5",PlayerInfo[playerid][PlayerVehicle2ModSlot5]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot6",PlayerInfo[playerid][PlayerVehicle2ModSlot6]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot7",PlayerInfo[playerid][PlayerVehicle2ModSlot7]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot8",PlayerInfo[playerid][PlayerVehicle2ModSlot8]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot9",PlayerInfo[playerid][PlayerVehicle2ModSlot9]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot10",PlayerInfo[playerid][PlayerVehicle2ModSlot10]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot11",PlayerInfo[playerid][PlayerVehicle2ModSlot11]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot12",PlayerInfo[playerid][PlayerVehicle2ModSlot12]); SQL_UpdateInt(index, "PlayerVehicle2ModSlot13",PlayerInfo[playerid][PlayerVehicle2ModSlot13]); SQL_UpdateInt(index, "VehLock2",PlayerInfo[playerid][pVehLock2]); SQL_UpdateInt(index, "VehLocked2",PlayerInfo[playerid][pVehLocked2]); SQL_UpdateInt(index, "PlayerVehicle2Interior",PlayerInfo[playerid][PlayerVehicle2Interior]); SQL_UpdateInt(index, "PlayerVehicle2VirWorld",PlayerInfo[playerid][PlayerVehicle2VirWorld]); SQL_UpdateInt(index, "PlayerVehicleModel3",PlayerInfo[playerid][PlayerVehicleModel3]); SQL_UpdateFloat(index, "PlayerVehicleFacing3",PlayerInfo[playerid][PlayerVehicleFacing3]); SQL_UpdateInt(index, "PlayerVehicle3Color",PlayerInfo[playerid][pPlayerVehicle3Color]); SQL_UpdateInt(index, "PlayerVehicle3Color2",PlayerInfo[playerid][pPlayerVehicle3Color2]); SQL_UpdateFloat(index, "PlayerVehiclePosX3",PlayerInfo[playerid][PlayerVehiclePosX3]); SQL_UpdateFloat(index, "PlayerVehiclePosY3",PlayerInfo[playerid][PlayerVehiclePosY3]); SQL_UpdateFloat(index, "PlayerVehiclePosZ3",PlayerInfo[playerid][PlayerVehiclePosZ3]); SQL_UpdateInt(index, "PlayerVehicle3PaintJob",PlayerInfo[playerid][PlayerVehicle3PaintJob]); SQL_UpdateInt(index, "PlayerVehicle3Nos",PlayerInfo[playerid][PlayerVehicle3Nos]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot0",PlayerInfo[playerid][PlayerVehicle3ModSlot0]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot1",PlayerInfo[playerid][PlayerVehicle3ModSlot1]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot2",PlayerInfo[playerid][PlayerVehicle3ModSlot2]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot3",PlayerInfo[playerid][PlayerVehicle3ModSlot3]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot4",PlayerInfo[playerid][PlayerVehicle3ModSlot4]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot5",PlayerInfo[playerid][PlayerVehicle3ModSlot5]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot6",PlayerInfo[playerid][PlayerVehicle3ModSlot6]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot7",PlayerInfo[playerid][PlayerVehicle3ModSlot7]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot8",PlayerInfo[playerid][PlayerVehicle3ModSlot8]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot9",PlayerInfo[playerid][PlayerVehicle3ModSlot9]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot10",PlayerInfo[playerid][PlayerVehicle3ModSlot10]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot11",PlayerInfo[playerid][PlayerVehicle3ModSlot11]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot12",PlayerInfo[playerid][PlayerVehicle3ModSlot12]); SQL_UpdateInt(index, "PlayerVehicle3ModSlot13",PlayerInfo[playerid][PlayerVehicle3ModSlot13]); SQL_UpdateInt(index, "VehLock3",PlayerInfo[playerid][pVehLock3]); SQL_UpdateInt(index, "VehLocked3",PlayerInfo[playerid][pVehLocked3]); SQL_UpdateInt(index, "PlayerVehicle3Interior",PlayerInfo[playerid][PlayerVehicle3Interior]); SQL_UpdateInt(index, "PlayerVehicle3VirWorld",PlayerInfo[playerid][PlayerVehicle3VirWorld]); SQL_UpdateInt(index, "PlayerVehicleModel4",PlayerInfo[playerid][PlayerVehicleModel4]); SQL_UpdateFloat(index, "PlayerVehicleFacing4",PlayerInfo[playerid][PlayerVehicleFacing4]); SQL_UpdateInt(index, "PlayerVehicle4Color",PlayerInfo[playerid][pPlayerVehicle4Color]); SQL_UpdateInt(index, "PlayerVehicle4Color2",PlayerInfo[playerid][pPlayerVehicle4Color2]); SQL_UpdateFloat(index, "PlayerVehiclePosX4",PlayerInfo[playerid][PlayerVehiclePosX4]); SQL_UpdateFloat(index, "PlayerVehiclePosY4",PlayerInfo[playerid][PlayerVehiclePosY4]); SQL_UpdateFloat(index, "PlayerVehiclePosZ4",PlayerInfo[playerid][PlayerVehiclePosZ4]); SQL_UpdateInt(index, "PlayerVehicle4PaintJob",PlayerInfo[playerid][PlayerVehicle4PaintJob]); SQL_UpdateInt(index, "PlayerVehicle4Nos",PlayerInfo[playerid][PlayerVehicle4Nos]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot0",PlayerInfo[playerid][PlayerVehicle4ModSlot0]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot1",PlayerInfo[playerid][PlayerVehicle4ModSlot1]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot2",PlayerInfo[playerid][PlayerVehicle4ModSlot2]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot3",PlayerInfo[playerid][PlayerVehicle4ModSlot3]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot4",PlayerInfo[playerid][PlayerVehicle4ModSlot4]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot5",PlayerInfo[playerid][PlayerVehicle4ModSlot5]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot6",PlayerInfo[playerid][PlayerVehicle4ModSlot6]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot7",PlayerInfo[playerid][PlayerVehicle4ModSlot7]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot8",PlayerInfo[playerid][PlayerVehicle4ModSlot8]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot9",PlayerInfo[playerid][PlayerVehicle4ModSlot9]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot10",PlayerInfo[playerid][PlayerVehicle4ModSlot10]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot11",PlayerInfo[playerid][PlayerVehicle4ModSlot11]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot12",PlayerInfo[playerid][PlayerVehicle4ModSlot12]); SQL_UpdateInt(index, "PlayerVehicle4ModSlot13",PlayerInfo[playerid][PlayerVehicle4ModSlot13]); SQL_UpdateInt(index, "VehLock4",PlayerInfo[playerid][pVehLock4]); SQL_UpdateInt(index, "VehLocked4",PlayerInfo[playerid][pVehLocked4]); SQL_UpdateInt(index, "PlayerVehicle4Interior",PlayerInfo[playerid][PlayerVehicle4Interior]); SQL_UpdateInt(index, "PlayerVehicle4VirWorld",PlayerInfo[playerid][PlayerVehicle4VirWorld]); SQL_UpdateInt(index, "PlayerVehicleModel5",PlayerInfo[playerid][PlayerVehicleModel5]); SQL_UpdateFloat(index, "PlayerVehicleFacing5",PlayerInfo[playerid][PlayerVehicleFacing5]); SQL_UpdateInt(index, "PlayerVehicle5Color",PlayerInfo[playerid][pPlayerVehicle5Color]); SQL_UpdateInt(index, "PlayerVehicle5Color2",PlayerInfo[playerid][pPlayerVehicle5Color2]); SQL_UpdateFloat(index, "PlayerVehiclePosX5",PlayerInfo[playerid][PlayerVehiclePosX5]); SQL_UpdateFloat(index, "PlayerVehiclePosY5",PlayerInfo[playerid][PlayerVehiclePosY5]); SQL_UpdateFloat(index, "PlayerVehiclePosZ5",PlayerInfo[playerid][PlayerVehiclePosZ5]); SQL_UpdateInt(index, "PlayerVehicle5PaintJob",PlayerInfo[playerid][PlayerVehicle5PaintJob]); SQL_UpdateInt(index, "PlayerVehicle5Nos",PlayerInfo[playerid][PlayerVehicle5Nos]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot0",PlayerInfo[playerid][PlayerVehicle5ModSlot0]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot1",PlayerInfo[playerid][PlayerVehicle5ModSlot1]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot2",PlayerInfo[playerid][PlayerVehicle5ModSlot2]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot3",PlayerInfo[playerid][PlayerVehicle5ModSlot3]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot4",PlayerInfo[playerid][PlayerVehicle5ModSlot4]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot5",PlayerInfo[playerid][PlayerVehicle5ModSlot5]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot6",PlayerInfo[playerid][PlayerVehicle5ModSlot6]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot7",PlayerInfo[playerid][PlayerVehicle5ModSlot7]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot8",PlayerInfo[playerid][PlayerVehicle5ModSlot8]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot9",PlayerInfo[playerid][PlayerVehicle5ModSlot9]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot10",PlayerInfo[playerid][PlayerVehicle5ModSlot10]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot11",PlayerInfo[playerid][PlayerVehicle5ModSlot11]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot12",PlayerInfo[playerid][PlayerVehicle5ModSlot12]); SQL_UpdateInt(index, "PlayerVehicle5ModSlot13",PlayerInfo[playerid][PlayerVehicle5ModSlot13]);
Code:
stock SQL_PrepareUpdate(name[]) { new index = -1; for (new i = 0; i < MAX_UPDATED_QUERIES; i ++) { if (!E_QUERY_EXISTS[i]) { index = i; break; } } if (index != -1) { format(E_QUERY_DATA[index], 2048, "UPDATE `Accounts` SET "); E_QUERY_POSITION[index] = strlen(E_QUERY_DATA[index]); E_QUERY_EXISTS[index] = true; strpack(E_QUERY_NAME[index], name); } return index; } stock SQL_UpdateInt(index, field[], value) { if ((index >= 0 && index < MAX_UPDATED_QUERIES) && E_QUERY_EXISTS[index]) { new string[24]; format(string, sizeof(string), "%d", value); return SQL_UpdateString(index, field, string); } return 0; } stock SQL_UpdateFloat(index, field[], Float:value) { if ((index >= 0 && index < MAX_UPDATED_QUERIES) && E_QUERY_EXISTS[index]) { new string[24]; format(string, sizeof(string), "%.4f", value); return SQL_UpdateString(index, field, string); } return 0; } stock SQL_UpdateString(index, field[], value[]) { if ((index >= 0 && index < MAX_UPDATED_QUERIES) && E_QUERY_EXISTS[index]) { new string[128], File:file; format(string, sizeof(string), "`%s` = '%s', ", field, DB_Escape(value)); if ((strlen(E_QUERY_DATA[index]) + strlen(string)) >= sizeof(E_QUERY_DATA[])) { new name[24]; strunpack(name, E_QUERY_NAME[index]); printf("Warning: Update data buffer trying to exceed %d/%d characters (name: %s, field: %s)", strlen(E_QUERY_DATA[index]), sizeof(E_QUERY_DATA[]), name); return 0; } strins(E_QUERY_DATA[index], string, E_QUERY_POSITION[index]); file = fopen("fields.ini", io_readwrite); if (file || !fexist("fields.ini")) { new bool:found; if (!fexist("fields.ini")) { found = false; file = fopen("fields.ini", io_append); } else { while (fread(file, string, sizeof(string))) { if (strcmp(string, field, false, strlen(field)) == 0) { found = true; break; } } } if (!found) { format(string, sizeof(string), "ALTER TABLE `Accounts` ADD COLUMN `%s` DEFAULT 0", field); db_query(AccountDB, string); fwrite(file, field); fwrite(file, "\r\n"); } fclose(file); } return 1; } return 0; stock SQL_Update(index) { if ((index >= 0 && index < MAX_UPDATED_QUERIES) && E_QUERY_EXISTS[index]) { new name[24], length = strlen(E_QUERY_DATA[index]); strunpack(name, E_QUERY_NAME[index]); strdel(E_QUERY_DATA[index], length - 2, length); format(E_QUERY_DATA[index], sizeof(E_QUERY_DATA[]), "%s WHERE `Username` = '%s'", E_QUERY_DATA[index], name); db_query(AccountDB, E_QUERY_DATA[index]); strdel(E_QUERY_DATA[index], 0, strlen(E_QUERY_DATA[index])); E_QUERY_EXISTS[index] = false; E_QUERY_POSITION[index] = 0; strdel(E_QUERY_NAME[index], 0, 6); return 1; } return 0; } }