An ugly game turned gorgeous in the nick of time for the win-starved Arizona Cardinals.

Patrick Peterson returned a punt 99 yards for a touchdown in overtime to give the Cardinals a stunning 19-13 victory over the St. Louis Rams on Sunday, bringing a dramatic end to Arizona's six-game losing streak.

Peterson, the fifth pick overall in the draft out of LSU, became the first player in NFL history to have three punt returns for scores in his first eight games. His latest was the second in NFL history to come in overtime. The other was 86 yards by Tamarick Vanover of Kansas City to beat San Diego on Oct. 9, 1995.

"He's a special young man," Arizona coach Ken Whisenhunt said. "I'm glad that we have him on our football team — my new son."

Said an admiring Rams coach Steve Spagnuolo, "That is a great player and he made a great play at a critical time."

Peterson, whose pass interference penalty moments earlier seemed to set up the Rams (1-7) for a game-winning field goal, fielded the ball at the 1. He evaded and bounced off tacklers over the next 30 yards or so, then outran everyone, striding the last few yards in celebration of his third punt return TD of the season as Arizona (2-6) won for the first time since the opening week of the season.

"I was like 'This team needs a play,'" Peterson said. "I decided to catch the ball and just run for my life."

Asked what Whisenhunt told him afterward, Peterson said, "he loved me."

"I said 'Coach, I love you, too.'"

Arizona's Calais Campbell blocked Josh Brown's 42-yard field goal attempt as regulation ended to force the overtime.

"It is probably the toughest loss I have had since I have been in the league," said Rams quarterback Sam Bradford, back after missing two games with a high ankle sprain. "I felt that for the most part we controlled this game. At the end with the opportunities we had in their territory and to possibly go ahead and not convert, it is tough."

John Skelton, starting in place of Arizona's Kevin Kolb, gave up safeties on consecutive plays in the third quarter, then threw a 13-yard touchdown pass to Larry Fitzgerald with 4:51 to tie the game at 13-13.

Brown had field goals of 48, 37 and 41 yards.

Steven Jackson rushed for 130 yards in 29 carries and Bradford was 23 of 36 for 255 yards. Skelton was 20 of 35 for 222 yards for the Rams.

Donnie Jones twice pinned the Cardinals inside their 10-yard line in the third quarter to set up the safeties. The first punt was downed at the 2. Arizona moved it to the 5, then James Hall burst through for a sack for a safety that boosted St. Louis' lead to 11-6. Arizona got the ball at its 9 the next time, and Skelton was called for intentional grounding on a rollout pass, giving the Rams a 13-6 lead.

It was the first time a player yielded two safeties in a quarter since Aaron Rodgers did it against Minnesota on Nov. 9, 2008. The last player to have safeties on consecutive plays was Kordell Stewart of Pittsburgh against Jacksonville on Oct. 3, 1999.

The safeties marked the first time in NFL history that a team had scored a total of four points in a quarter.

"We just gave them four points in two possessions right there with those plays," Skelton said, "but no one lost faith on the sidelines."

With Kolb out with a turf toe, Skelton brought the Cardinals back with a no-huddle offense. He completed 5 of 7 passes for 47 yards and scrambled twice for 28 on a nine-play, 84-yard drive for the game's only touchdown on a leaping grab by Fitzgerald in the back of the end zone.

The Rams took the subsequent kickoff and drove to the Arizona 32, where they had third-and-1, but twice Jackson was stopped for no gain, the first time by O'Brien Schofield, the second by Darnell Dockett.

The Cardinals couldn't take advantage, though, because Skelton fumbled but recovered for a 15-yard loss and Arizona had to punt with a minute to play in regulation.

Bradford's 23-yard pass to Austin Pettis moved the ball to the 42, then a 5-yarder to Pettis moved it to the 37. Cornerback Michael Adams was injured on the play and had to be carted off. St. Louis tight end Lance Kendricks and wide receiver Greg Salas had been taken off on carts earlier.

The pass interference penalty on Peterson — against Brandon Lloyd, who caught five for 80 yards — moved the ball well within Brown's range. The Cardinals had lost four games by four points or fewer and they seemed headed for a fifth, until the 6-foot-8 Campbell, with a generous shove from teammate Darnell Dockett, knocked the kick away.

"My mindset was just we've got to find a way to get a block," Campbell said. "Whatever I've got to do I've got to find a way to get a block. I told Darnell Dockett 'Man, if you give me a good push, I might get a block," and he gave me the best push I've ever seen ever. In four years of playing with him, that's the best push he ever gave me."

Peterson's game-winning play came a day after his college team, No. 1 LSU, defeated then No. 2 Alabama 9-6 in overtime.

"Tiger pride forever," he said.

The Rams dominated the first half statistically but led only 9-3.

Notes: Among those carted off in the rugged contest, the most seriously hurt appeared to be Salas, who has a broken leg and could be out for the season. ... Richard Marshall started at cornerback for Arizona in place of struggling A.J. Jefferson. ... Muhammad Ali attended the game, sitting next to Cardinals president Michael Bidwill in the owners' suite. ... The roof was open at University of Phoenix Stadium for a Cardinals game for the first time since Arizona played Dallas last Christmas.