Match ends, Preston North End 2, Charlton Athletic 1.
Callum Robinson netted the decisive goal as Preston North End beat bottom-of-the-table Charlton Athletic to earn a fourth league win in a row.
Preston led when Joe Garner headed in Paul Gallagher's corner.
But just two minutes later Johann Berg Gudmundsson drilled the ball home from 20 yards to bring Charlton level.
Substitute Robinson scored from 12 yards to restore Preston's lead after the break, before Harry Lennon was sent off for raising his arm to Garner.
The visitors have now won just one of their last 17 matches and are seven points adrift of safety but showed signs of life despite finishing empty-handed at Deepdale.
Charlton could have led early on as a floated free-kick from the left found Roger Johnson unmarked, but the defender's weak header failed to test Anders Lindegaard.
After a poor opening half-hour, the hosts took the lead with Garner taking advantage of some lax defending.
Berg Gudmundsson scored the Addicks first goal in four games to reward the away side for their early endeavour.
With Charlton's confidence boosted, Jorge Teixeira and Ademola Lookman both fired wide, but their defence once again let them down as Robinson restored promotion-chasing Preston's lead after great work by Adam Reach on the left.
Lennon was dismissed with more than a quarter of an hour remaining, and Reach could have added a third only to shoot straight at Stephen Henderson.
Preston manager Simon Grayson:
"We've come out on top. It was not the best of games but who cares?
"Everybody cancelled each other out first half - we could have played better because we didn't pass the ball anywhere near as quickly and as well as we can do. In the second half we were much better with a solid back four.
"To have won four league games on the trot at this level is very satisfying. I have just complimented the players on that.
"I'm not sure how many teams have won four games on the trot in this division all season but for us to have done it - full credit to the players."
Charlton boss Jose Riga: "The truth is in the two boxes, offensively and defensively, that is the part of the pitch that we were not able to master.
"We are most disappointed and frustrated because we conceded from set-pieces last game, so we worked on this situation and we were good in the game.
"Maybe again it's about the quality and we missed an opportunity to hurt the opposition.
"The confidence has grown throughout the game. But then it's about individual mistakes. We cannot repeat this kind of situation. We have to be more consistent."
- 6WrightSubstituted forRobinsonat 45'minutesBooked at 90mins
- 12GallagherSubstituted forWelshat 83'minutesBooked at 89mins
- 14GarnerSubstituted forHugillat 90+3'minutes
- 47MottaSubstituted forSanogoat 78'minutesBooked at 79mins
- 26LennonBooked at 74mins
- 7Berg Gudmundsson
- 20SollySubstituted forFanniat 64'minutes
- 8CousinsSubstituted forBaat 58'minutes
- James Adcock
- Shots on Target
Second Half ends, Preston North End 2, Charlton Athletic 1.
Corner, Charlton Athletic. Conceded by Paul Huntington.
Attempt blocked. Yaya Sanogo (Charlton Athletic) right footed shot from the left side of the box is blocked. Assisted by Roger Johnson with a headed pass.
Substitution, Preston North End. Jordan Hugill replaces Joe Garner.
Callum Robinson (Preston North End) is shown the yellow card.
Offside, Preston North End. Joe Garner tries a through ball, but Callum Robinson is caught offside.
Offside, Charlton Athletic. El-Hadji Ba tries a through ball, but Simon Makienok is caught offside.
John Welsh (Preston North End) is shown the yellow card for a bad foul.
Ademola Lookman (Charlton Athletic) wins a free kick in the attacking half.
Foul by John Welsh (Preston North End).
Attempt missed. Alan Browne (Preston North End) right footed shot from outside the box is high and wide to the right. Assisted by Joe Garner.
Hand ball by Yaya Sanogo (Charlton Athletic).
Substitution, Preston North End. John Welsh replaces Paul Gallagher.
Simon Makienok (Charlton Athletic) wins a free kick in the attacking half.
Foul by Tom Clarke (Preston North End).
Delay over. They are ready to continue.
Delay in match Paul Huntington (Preston North End) because of an injury.
Yaya Sanogo (Charlton Athletic) is shown the yellow card for a bad foul.
Foul by Yaya Sanogo (Charlton Athletic).