Unknown column in 'on clause' in Multiple Joins

Hello, Following is the query I’m using with multiple joins.

SELECT
`tickets`.`ID`, `tickets`.`ticketID`, `tickets`.`JobID`, `tickets`.`truck_number`, `tickets`.`material`, `tickets`.`asce_number`, `tickets`.`row_number`, `tickets`.`disposal_site` as site, `job_sites`.`name` as site, `tickets`.`disposal_date` as date, `tickets`.`work_number`, `tickets`.`type`, `jobs`.`ID`, `jobs`.`job_name`, `trucks`.`ID`, `trucks`.`contractor`, `contractors`.`company` as Contractor, `trucks`.`truck_capacity` as Capacity, `trucks`.`truck_license_plate`, `materials`.`ID`, `materials`.`type` AS material_type FROM (`tickets`)

JOIN `jobs` ON `jobs`.`ID` = `tickets`.`JobID`
JOIN `job_sites` ON `job_sites`.`ID` = `tickets`.`disposal_site`
[B]JOIN `contractors` ON `contractors`.`ID` = `trucks`.`contractor` [/B]
JOIN `trucks` ON `trucks`.`ID` = `tickets`.`truck_number`
JOIN `materials` ON `materials`.`ID` = `tickets`.`material`

problem is with "JOIN contractors ON contractors.ID = trucks.contractor "
It says #1054 - Unknown column ‘trucks.contractor’ in ‘on clause’

write your joins in a sensible sequence so that you join only to tables that have previously been mentioned

  FROM tickets 
INNER
  JOIN jobs 
    ON jobs.ID = tickets.JobID 
INNER
  JOIN job_sites 
    ON job_sites.ID = tickets.disposal_site 
INNER
  JOIN trucks 
    ON trucks.ID = tickets.truck_number 
INNER
  JOIN contractors 
    ON contractors.ID = trucks.contractor 
INNER
  JOIN materials 
    ON materials.ID = tickets.material

Thanks a lot. It worked like a charm!!