Korioz / krz_gangsbuilder

🎓 ESX GangsBuilder by Korioz
GNU General Public License v3.0
17 stars 12 forks source link

[script:oxmysql] Error: krz_gangsbuilder was unable to execute a query! #11

Open matoqwerty opened 1 year ago

matoqwerty commented 1 year ago

Salut, je ne parviens pas à utiliser le script du à cette erreur l'ors de la création du gang, pouvez vous m'aider svp?

l'erreur :

[ script:oxmysql] Error: krz_gangsbuilder was unable to execute a query! [ script:oxmysql] Query: INSERT INTO addon_account (name, label, shared) VALUES (?, ?, 1); [ script:oxmysql] INSERT INTO datastore (name, label, shared) VALUES (?, ?, 1); [ script:oxmysql] INSERT INTO addon_inventory (name, label, shared) VALUES (?, ?, 1); [ script:oxmysql] INSERT INTO jobs (name, label, whitelisted) VALUES (?, ?, 1); [ script:oxmysql] INSERT INTO job_grades (job_name, grade, name, label, salary, skin_male, skin_female) VALUES [ script:oxmysql] (?, 0, 'rookie', 'Associé', 0, '{}', '{}'), [ script:oxmysql] (?, 1, 'member', 'Soldat', 0, '{}', '{}'), [ script:oxmysql] (?, 2, 'elite', 'Elite', 0, '{}', '{}'), [ script:oxmysql] (?, 3, 'lieutenant', 'Lieutenant', 0, '{}', '{}'), [ script:oxmysql] (?, 4, 'viceboss', 'Bras Droit', 0, '{}', '{}'), [ script:oxmysql] (?, 5, 'boss', 'Patron', 0, '{}', '{}'); [ script:oxmysql]
[ script:oxmysql] ["society_mafia","Mafia","society_mafia","Mafia","society_mafia","Mafia","mafia","Mafia","mafia","mafia","mafia","mafia","mafia","mafia"] [ script:oxmysql] You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'INSERT INTO datastore (name, label, shared) VALUES ('society_mafia', 'Mafia',...' at line 2

Le code en question (server/builder.lua) :

RegisterServerEvent('gb:addGang') AddEventHandler('gb:addGang', function(data) MySQL.Async.execute([[ INSERT INTO addon_account (name, label, shared) VALUES (@gangSociety, @gangLabel, 1); INSERT INTO datastore (name, label, shared) VALUES (@gangSociety, @gangLabel, 1); INSERT INTO addon_inventory (name, label, shared) VALUES (@gangSociety, @gangLabel, 1); INSERT INTO jobs (name, label, whitelisted) VALUES (@gangName, @gangLabel, 1); INSERT INTO job_grades (job_name, grade, name, label, salary, skin_male, skin_female) VALUES (@gangName, 0, 'rookie', 'Associé', 0, '{}', '{}'), (@gangName, 1, 'member', 'Soldat', 0, '{}', '{}'), (@gangName, 2, 'elite', 'Elite', 0, '{}', '{}'), (@gangName, 3, 'lieutenant', 'Lieutenant', 0, '{}', '{}'), (@gangName, 4, 'viceboss', 'Bras Droit', 0, '{}', '{}'), (@gangName, 5, 'boss', 'Patron', 0, '{}', '{}') ; ]], { ['@gangName'] = data.Name, ['@gangLabel'] = data.Label, ['@gangSociety'] = 'society_' .. data.Name }, function(rowsChanged) table.insert(GangsData, data) SaveResourceFile('krz_gangsbuilder', 'data/gangData.json', json.encode(GangsData)) end) end)

Dev5M commented 1 year ago

GangsData = {}

function GetGangs() local data = LoadResourceFile('krz_gangsbuilder', 'data/gangData.json') return data and json.decode(data) or {} end

function GetGang(job2) for i = 1, #GangsData, 1 do if job2.name == GangsData[i].Name then return GangsData[i] end end

return false

end

ESX.RegisterServerCallback('KorioZ-GangsBuilder:Admin_getUsergroup', function(source, cb) local xPlayer = ESX.GetPlayerFromId(source) local plyGroup = xPlayer.getGroup()

if plyGroup ~= nil then 
    cb(plyGroup)
else
    cb('user')
end

end)

RegisterServerEvent('gb:addGang') AddEventHandler('gb:addGang', function(data) local gangName = data.Name; local gangLabel = data.Label; local gangSociety = 'society_' .. data.Name; MySQL.insert('INSERT INTO addon_account (name, label, shared) VALUES (?, ?, ?)', {gangSociety, gangLabel, 1}) MySQL.insert('INSERT INTO datastore (name, label, shared) VALUES (?, ?, ?)', {gangSociety, gangLabel, 1}) MySQL.insert('INSERT INTO addon_inventory (name, label, shared) VALUES (?, ?, ?)', {gangSociety, gangLabel, 1}) MySQL.insert('INSERT INTO jobs2 (name, label, whitelisted) VALUES (?, ?, ?)', {gangName, gangLabel, 1}) --Code KorioZ non compatible oxmysql --Va dans le Mysql.Async.execute de base --Ne pas reactivé ses lignes ici même : -- INSERT INTO addon_account (name, label, shared) VALUES (@gangSociety, @gangLabel, 1); -- INSERT INTO datastore (name, label, shared) VALUES (@gangSociety, @gangLabel, 1); -- INSERT INTO addon_inventory (name, label, shared) VALUES (@gangSociety, @gangLabel, 1); -- INSERT INTO jobs2 (name, label, whitelisted) VALUES (@gangName, @gangLabel, 1); MySQL.Async.execute([[ INSERT INTO job2_grades (job_name, grade, name, label, salary, skin_male, skin_female) VALUES (@gangName, 0, 'rookie', 'Associé', 0, '{}', '{}'), (@gangName, 1, 'member', 'Soldat', 0, '{}', '{}'), (@gangName, 2, 'elite', 'Elite', 0, '{}', '{}'), (@gangName, 3, 'lieutenant', 'Lieutenant', 0, '{}', '{}'), (@gangName, 4, 'viceboss', 'Bras Droit', 0, '{}', '{}'), (@gangName, 5, 'boss', 'Patron', 0, '{}', '{}'); ]], { ['@gangName'] = data.Name, ['@gangLabel'] = data.Label, ['@gangSociety'] = 'society_' .. data.Name }, function(rowsChanged) table.insert(GangsData, data) SaveResourceFile('krz_gangsbuilder', 'data/gangData.json', json.encode(GangsData)) end) end)

RegisterServerEvent('gb:requestSync') AddEventHandler('gb:requestSync', function() local xPlayer = ESX.GetPlayerFromId(source) local plyGang = GetGang(xPlayer.job2) TriggerClientEvent('gb:SyncGang', xPlayer.source, plyGang) end)

AddEventHandler('esx:playerLoaded', function(source, xPlayer) local plyGang = GetGang(xPlayer.job2) TriggerClientEvent('gb:SyncGang', source, plyGang) end)

AddEventHandler('esx:setJob2', function(source, job2) local plyGang = GetGang(job2) TriggerClientEvent('gb:SyncGang', source, plyGang) end)

Citizen.CreateThread(function() GangsData = GetGangs()

for i = 1, #GangsData, 1 do
    TriggerEvent('esx_society:registerSociety', GangsData[i].Name, GangsData[i].Label, 'society_' .. GangsData[i].Name, 'society_' .. GangsData[i].Name, 'society_' .. GangsData[i].Name, {type = 'public'})
end

end)