Bournemouth missed a chance to move back into the automatic promotion places as they suffered a late 2-1 defeat at Preston.
Substitute Emil Riis Jakobsen hit the winner with a minute to go to complete a comeback win for the Lilywhites.
The visitors, who came into the game on the back of four straight Sky Bet Championship wins, went ahead through Jamal Lowe early in the second half.
But the promotion chasers lost their concentration and were pegged back just four minutes later through Cameron Archer’s composed finish.
Bournemouth nearly won the game late on when Nat Phillips saw a looping header well saved just a minute before Jakobsen’s dramatic winner.
The goal saw Adam Smith and Scott Parker sent off from the Bournemouth bench as frustrations boiled over.
The Cherries started well, with Todd Cantwell having an early shot saved by Daniel Iversen before Alan Browne had a header blocked after getting on the end of Ben Whiteman’s corner on 15 minutes for the hosts.
Ched Evans had a deflected shot saved by Mark Travers after he took advantage of a sloppy pass by Phillips.
The hosts then began to set the pace, Archer blazing over from close range while under pressure from three Bournemouth defenders.
Brad Potts picked up a booking for a poor tackle on Lloyd Kelly midway through the half.
Whiteman then had a shot blocked before Sepp Van Den Berg fired the rebound straight at Travers.
The Cherries keeper saved well with his feet five minutes prior to the break to keep out Archer’s shot, before Andrew Hughes failed to hit the target from 30 yards after a good run out of defence for North End.
Lowe then put Bournemouth ahead five minutes into the second half after he got on the end of Jaidon Anthony’s cross and went around the keeper.
Hughes dithered on the ball as he attempted to leave it for Iversen, allowing Lowe to get in and break the deadlock.
The lead lasted just four minutes, however, as Archer finished well from Daniel Johnson’s cut-back.
Potts then volleyed over from a corner before Van Den Berg was booked for a foul on Anthony.
Philip Billing failed to hit the target with a first-time effort as chances started to dry up at both ends, but Iversen pulled off a great save at full stretch to keep out Phillips’ header with two minutes left.
It proved to be crucial as Jakobsen fired into the far corner following a driving run just 60 seconds later.
Smith, who had been subbed off on 67 minutes, and Parker were then sent down the tunnel by referee Matt Donohue to complete a miserable afternoon for the visitors.