Peterborough withstood a fierce Bolton comeback to win a thrilling game at London Road.
Lee Tomlin and Dwight Gayle had Posh two goals ahead after five minutes, and after Keith Andrews pulled one back from the spot, George Thorne made it 3-1 two minutes after the break.
Andrews added another penalty but Mark Little and Gabriel Zakuani gave the hosts a three-goal lead.
But Benik Afobe and Martin Petrov both scored to set up a tense finish.
Darren Ferguson's side remain bottom of the Championship despite their second successive win.
Tomlin broke on to George Boyd's cross-field pass to guide past Adam Bogdan and Gayle added a second on the half-volley.
After Zakuani was penalised for holding Sam Ricketts at a corner, Andrews scored the resulting spot-kick but Thorne restored the two-goal margin by sweeping in from the edge of the area two minutes after the break.
Andrews converted another penalty after Joe Newell fouled Afobe but Little finished from Newell's cross and Zakuani headed in from Tomlin's ball to make it 5-2.
Dougie Freedman's Bolton cut the lead when Afobe finished Petrov's corner from close-range.
Petrov then produced a powerful finish with three minutes left, but Peterborough held on.
Peterborough manager Darren Ferguson: "The game should really have been over at 5-2 and we can't afford the make the sort of lapses in concentration that we did late on.
"We are in a battle to stay up and goal difference could be a factor so we cannot afford to give soft goals away, but I don't want to be too critical of my players after producing such a good performance against a team that were in the Premier League this time last year.
Bolton boss Dougie Freedman: "We knew that individual mistakes could well influence a game played in very testing conditions and that is an area in which we let ourselves down.
"We weren't in the game for the opening 20 minutes and full credit to Peterborough for the way they started.
"But we were much-improved in the second half and it was pleasing to see the players continue to show such desire even when it looked as though the match had gone."
Sorry, we were unable to load match stats, please try again.