The Bantams are now bottom of League One - and six points from safety - after AFC Wimbledon leapfrogged them with their third win on the bounce.

Joe Piggot's goal sealed a 1-0 win for the Dons at Southend, who are fifth from bottom.

Just three points separate the Shrimpers from 12th-placed Plymouth in a congested bottom half of the table.

Shrewsbury delivered a vital win, with two late goals in a 2-1 success over Wycombe, who led through Jason McCarthy's free-kick.

Omar Beckles levelled for the Shrews in the 87th minute before Ollie Norburn struck a penalty in the third minute of added time.

Leaders Luton extended their unbeaten run to 25 games but they were held to a 2-2 draw with Gillingham.

The Hatters, marching towards the Championship, twice led through Danny Hylton and Jack Stacey, but Tom Eaves' 19th of the season and Luke O'Neill's 79th-minute strike earned the Gills a point.

Sunderland blew the race for automatic promotion wide open after they came from behind to beat Walsall 2-1.

With second-placed Barnsley dropping two points in a 0-0 draw at Doncaster on Friday, the Black Cats cut the gap to two points thanks to Lee Cattermole and Will Grigg goals.

Walsall had gone ahead in the fourth minute through Josh Gordon, but Jack Ross' side battled back for an important win.

Portsmouth also got themselves back in the race for automatic promotion with a 2-0 win over Scunthorpe.

Omar Bogle opened the scoring 19 minutes from time before Jamal Lowe made the game safe as Pompey moved four points behind Barnsley.

Coventry's hopes of sneaking into the last play-off place were boosted with an impressive 2-1 win at Peterborough, who they leapfrogged in the table.

Amadou Bakayoko put them ahead three minutes before the break, with Bright Enobakhare adding a second shortly after. Louis Reed scored a late consolation for Posh deep into stoppage time.

Fleetwood's play-off chances were buoyed with a 2-0 win over Plymouth as Jason Holt and Ashley Hunter both scored late goals.

Burton beat Blackpool 3-0, Bristol Rovers and Charlton drew 0-0 and Accrington's game with Rochdale was called off due to a waterlogged pitch.