Jump to content

[HELP] Script on load vehicles from MySQL


Seba500PLK

Recommended Posts

Hello, I made such a code, but when the vehicle load is shown only one

  
function LoadVehicles() 
  
    local sql = dbQuery(dbConnection,"SELECT * FROM Pojazdy") 
    local rezultat,num_rows = dbPoll ( sql, - 1 )  
  
        if sql then 
            if rezultat then  
                                     
                local VehicleID = v.rezultat[1].Vehicle_ID                   
  
                local x = rezultat[1].LastPosX 
                local y = rezultat[1].LastPosY 
                local z = rezultat[1].LastPosZ 
                local rx = rezultat[1].LastRotX 
                local ry = rezultat[1].LastRotY 
                local rz = rezultat[1].LastRotZ 
  
                    veh = createVehicle(VehicleID, x, y, z, rx, ry, rz) 
                                             
  
            end 
        end 
end 
  
  
  
addCommandHandler ( "lv", LoadVehicles ) 
  

Link to comment

Unfortunately, I have another question, this time saveing vehicles.

  
function SaveVehicles() 
        for i, vehicle in pairs (getElementsByType("vehicle")) do 
  
        local x, y, z = getElementPosition(vehicle) 
        local rx, ry, rz = getElementRotation(vehicle) 
        local color1, color2, color3, color4 = getVehicleColor(vehicle) 
        local model = getElementModel(vehicle) 
        local health = getElementHealth (vehicle) 
        local tableUpgrades = getVehicleUpgrades(vehicle) 
        local upgrades = table.concat(tableUpgrades, ",") 
        local paintjob = getVehiclePaintjob(vehicle) 
  
    dbExec (dbConnection, "UPDATE Pojazdy SET Vehicle_ID='" .. model .. "', LastPosX='" .. x .. "', LastPosY='" .. y .. "',LastPosZ='" .. z .. "',LastRotX='" .. rx .. "',LastRotY='" .. ry .. "',LastRotZ='" .. rz .. "'") 
  
  
    end 
end 
addCommandHandler ( "sv", SaveVehicles ) 
  

MySQL:

Before save:

before.png

AFTER save:

after.png

Link to comment

You'll need to make an unique identifier for each vehile (And most likely, store it on it as element data as it will be attached to it)

  
dbExec (dbConnection, "UPDATE Pojazdy SET Vehicle_ID='" .. model .. "', LastPosX='" .. x .. "', LastPosY='" .. y .. "',LastPosZ='" .. z .. "',LastRotX='" .. rx .. "',LastRotY='" .. ry .. "',LastRotZ='" .. rz .. "' WHERE Unique_ID = '"..getElementData(vehicle, "uniqueID").."'") 
  
  

Always remember to delete the row value when the vehicle is lost or destroyed, so carefully check on that.

Moreover: http://www.w3schools.com/sql/sql_where.asp

Link to comment

I know what is happening. The script saves the vehicle but saves them as many times as vehicles on the server

  
function SaveVehicles() 
  
        
                        local sql = dbQuery(dbConnection,"SELECT * FROM Pojazdy") 
                        local rezultat,num_rows = dbPoll ( sql, - 1 )  
                                if sql then 
                                    if rezultat then  
                                        for _, row in ipairs ( rezultat ) do     
   
        
        for i, vehicle in ipairs (getElementsByType("vehicle")) do 
        local x, y, z = getElementPosition(vehicle) 
        local rx, ry, rz = getElementRotation(vehicle) 
        local color1, color2, color3, color4 = getVehicleColor(vehicle) 
        local model = getElementModel(vehicle) 
        --local vid = getElementData(vehicle, "VehicleID") 
        local health = getElementHealth (vehicle) 
        local tableUpgrades = getVehicleUpgrades(vehicle) 
        local upgrades = table.concat(tableUpgrades, ",") 
        local paintjob = getVehiclePaintjob(vehicle) 
         
        outputChatBox("* save id: "..row.id..", Model: "..model, source) 
         
         
         
        dbExec (dbConnection, "UPDATE Pojazdy SET Model='" .. model .. "', LastPosX='" .. x .. "', LastPosY='" .. y .. "',LastPosZ='" .. z .. "',LastRotX='" .. rx .. "',LastRotY='" .. ry .. "',LastRotZ='" .. rz .. "' WHERE id='"..row.id.."'") 
        end 
        end 
        end 
         
    end 
        
end 
addCommandHandler ( "sv", SaveVehicles ) 
  

when you type the command / sv appear vehicles saved:

* save id: 1, Model: 548

* save id: 1, Model: 542

* save id: 1, Model: 470

* save id: 1, Model: 483

* save id: 2, Model: 548

* save id: 2, Model: 542

* save id: 2, Model: 470

* save id: 2, Model: 483

* save id: 3, Model: 548

* save id: 3, Model: 542

* save id: 3, Model: 470

* save id: 3, Model: 483

* save id: 4, Model: 548

* save id: 4, Model: 542

* save id: 4, Model: 470

* save id: 4, Model: 483

* save id: 5, Model: 548

* save id: 5, Model: 542

* save id: 5, Model: 470

* save id: 5, Model: 483

* save id: 6, Model: 548

* save id: 6, Model: 542

* save id: 6, Model: 470

* save id: 6, Model: 483

* save id: 7, Model: 548

* save id: 7, Model: 542

* save id: 7, Model: 470

* save id: 7, Model: 483

* save id: 8, Model: 548

* save id: 8, Model: 542

* save id: 8, Model: 470

* save id: 8, Model: 483

* save id: 9, Model: 548

* save id: 9, Model: 542

* save id: 9, Model: 470

* save id: 9, Model: 483

* save id: 10, Model: 548

* save id: 10, Model: 542

* save id: 10, Model: 470

* save id: 10, Model: 483

* save id: 11, Model: 548

* save id: 11, Model: 542

* save id: 11, Model: 470

* save id: 11, Model: 483

* save id: 12, Model: 548

* save id: 12, Model: 542

* save id: 12, Model: 470

* save id: 12, Model: 483

* save id: 13, Model: 548

* save id: 13, Model: 542

* save id: 13, Model: 470

* save id: 13, Model: 483

* save id: 14, Model: 548

* save id: 14, Model: 542

* save id: 14, Model: 470

* save id: 14, Model: 483

* save id: 15, Model: 548

* save id: 15, Model: 542

* save id: 15, Model: 470

* save id: 15, Model: 483

* save id: 16, Model: 548

* save id: 16, Model: 542

* save id: 16, Model: 470

* save id: 16, Model: 483

* save id: 17, Model: 548

* save id: 17, Model: 542

* save id: 17, Model: 470

* save id: 17, Model: 483

* save id: 18, Model: 548

* save id: 18, Model: 542

* save id: 18, Model: 470

* save id: 18, Model: 483

* save id: 19, Model: 548

* save id: 19, Model: 542

* save id: 19, Model: 470

* save id: 19, Model: 483

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...