The check engine light can come on for any number of reasons once a computer threshold is reached - one of the most common but not the only reason is the loose/faulty gas cap. That's why you need the fault codes....
Tue but since he mentioned the reoccurring gas cap warning followed by engine light means it is most likely the evap system or the cap. He will read the codes and it will say one of 2 things either a massive leak or minor leak in the tank pressure which shows up as gas cap fault.
The list of items that can cause those faults are is fairly extensive:
Gas Cap,
Leak in the tank or filer hose.
DMTL pump
Charcoal canister ETC ETC ETC
The last three times this has happened in out LR club it was the DMTL pump.