fix(es_extended/server/functions): persist items added via AddItems

MySQL.prepare.await batch mode expects an array of positional parameter
arrays, but toInsert holds keyed tables, so the placeholders received no
values and the INSERT silently did nothing. Items still showed up in-game
because ESX.Items was populated from the keyed tables, but nothing was
written to the items table. Build a positional parameters array for the
prepared insert.

Closes #1768
This commit is contained in:
Selt
2026-07-27 02:05:17 +02:00
parent ca597cf6f4
commit c30225f223
+7 -1
View File
@@ -799,9 +799,15 @@ if not Config.CustomInventory then
end
if #toInsert > 0 then
local parameters = {}
for i = 1, #toInsert do
local row = toInsert[i]
parameters[i] = { row.name, row.label, row.weight, row.rare, row.canRemove }
end
MySQL.prepare.await(
"INSERT IGNORE INTO `items` (`name`, `label`, `weight`, `rare`, `can_remove`) VALUES (?, ?, ?, ?, ?)",
toInsert)
parameters)
for i = 1, #toInsert do
local row = toInsert[i]