Aleksandar Mitrovic missed a hotly-contested penalty as Fulham were dumped out of the FA Cup 2-1 by League Two side Oldham.

Callum Lang headed in the visitors' 89th-minute winner to stun the Premier League hosts and prompt extended touchline celebrations from caretaker boss and lifelong supporter Pete Wild.

Denis Odoi's goal early in the second half meant Fulham were expecting to coast home, only for Oldham to turn the tide.

Watford captain Troy Deeney came off the substitutes' bench to wrap up their FA Cup third-round win over non-league Woking.

The Premier League outfit made hard work of seeing off their hosts, Will Hughes giving them a first-half lead before Deeney was introduced late on to secure a 2-0 victory in Surrey.

Barnet produced one of the biggest shocks of the weekend as the non-league side knocked out Championship high-fliers Sheffield United with a 1-0 win at Bramall Lane.

Shaquile Coulthirst's first-half penalty saw the Bees eliminate a side 83 places above them in the Football League pyramid.

Jake Bidwell's second-half header handed QPR a 2-1 victory over Leeds United and a rare place in the fourth round.

Bidwell headed home Luke Freeman's left-wing corner with 15 minutes remaining to give the west London club their first third-round win without the need of a replay in 23 years.

Leeds had hit back after Aramide Oteh's 23rd-minute penalty put Rangers ahead at Loftus Road.

Young forward Oteh calmly converted from the spot after Bidwell had been brought down by Leif Davis.

Substitute Shane Ferguson's brilliant late double saw Millwall progress as they came from behind to record a 2-1 win over Hull at the Den.

Two goals in the final 20 minutes saw Doncaster cause an FA Cup third round upset with a 3-1 win at Preston North End.

The League One side hit the front thanks to John Marquis' fifth-minute header during an open first half.

They were pegged back by an Andrew Hughes header as the Championship outfit started the second period strongly.

But Tom Anderson scrambled the ball home with 18 minutes to go to put the visitors in control and Rovers sealed their place in the fourth round for the first time in nine seasons when Mallik Wilks slotted home in the 87th minute.