The New York Giants rallied, the Arizona Cardinals pulled off an upset and the San Francisco 49ers kept rolling. Here's a recap of Sunday's Week 2 NFL action:

N.Y. Giants 41 — Tampa Bay 34

Eli Manning passed for a career-best 510 yards, and Andre Brown's 2-yard run with 31 seconds remaining gave the New York Giants a 41-34 win over the Tampa Bay Buccaneers on Sunday in East Rutherford, NJ. Just before halftime, Manning had the third of three first-half interceptions returned 60 yards for a touchdown by Eric Wright, making the score 24-13 Buccaneers. Trailing by 14 points until late in the third quarter, New York (1-1) scored 24 points in the last 16 minutes of the game to secure the victory over Tampa Bay (1-1). Manning completed 31 of 51 passes, including three touchdowns. New York's Victor Cruz had 11 catches for 179 yards and a score, while teammate Hakeem Nicks had 10 catches for 199 yards and a touchdown. Tampa Bay's Josh Freeman passed for 243 yards, two touchdowns and two interceptions. Buccaneers' receiver Vincent Jackson caught five passes for 128 yards and one score.

Arizona 20 — New England 18

Stephen Gostkowski missed a potential game-winning, 42-yard field goal, and the Arizona Cardinals beat the New England Patriots, 20-18, in Foxboro, Mass. on Sunday. Arizona (2-0) was led by quarterback Kevin Kolb, who threw for one touchdown and ran for another while subbing for the injured John Skelton. New England (1-1) had the opportunity to win after defensive lineman Vince Wilfork recovered a fumble in Arizona territory with 1:01 left, however Gostkowski missed the field goal. Quarterback Tom Brady threw for 316 yards, one touchdown and one interception for New England, while teammate Wes Welker caught five passes for 95 yards.

San Francisco 27 — Detroit 19

Alex Smith passed for 226 yards and two touchdowns to Vernon Davis, and the San Francisco 49ers beat the Detroit Lions, 27-19, on Sunday night in San Francisco. San Francisco (2-0) kept the potent Lions' offense out of the end zone until there were less than two minutes to play. Detroit (1-1) was unable to stop Davis, who finished with five catches for 73 yards and the two scores. Frank Gore added 89 yards and a touchdown for the Niners. Calvin Johnson caught eight passes for 94 yards for the Lions. Detroit quarterback Matthew Stafford threw for 230 yards, a touchdown and an interception.

Philadelphia 24 — Baltimore 23

Michael Vick scored on a 1-yard run with 1:55 to play, as the Philadelphia Eagles rallied to beat the Baltimore Ravens, 24-23, on Sunday in Philadelphia. Philadelphia (2-0) has won each of its first two games by a single point. Baltimore (1-1) had a chance to rally, but could not get into field goal range in the final minute. Vick completed 23 of 32 passes for 371 yards, a touchdown and two interceptions for the Eagles. Philadelphia tight end Brent Celek caught eight passes for 157 yards, while teammate DeSean Jackson had seven receptions for 114 yards. Baltimore running back Ray Rice carried 16 times for 99 yards, while quarterback Joe Flacco completed 22 of 42 passes for 232 yards, a touchdown and an interception. Rookie kicker Justin Tucker made field goals of 56, 51 and 48 yards for the Ravens.

St. Louis 31 — Washington 28

Sam Bradford passed for 310 yards and three touchdowns, as the St. Louis Rams beat the Washington Redskins, 31-28, in St. Louis on Sunday. St. Louis (1-1) trailed 21-6 in the second quarter, but Bradford's passing rallied his team to victory. Billy Cundiff attempted a game-tying 62-yard field goal with 1:13 left for Washington (1-1), but it was well short. Rams' receiver Danny Amendola caught 16 passes for 160 yards. Redskins' quarterback Robert Griffin III threw for 206 yards and a touchdown. Griffin ran for two other scores while rolling up 82 yards on the ground.

Pittsburgh 27 — N.Y. Jets 10

Ben Roethlisberger threw for 275 yards and two touchdowns, and the Pittsburgh Steelers beat the New York Jets, 27-10, in Pittsburgh on Sunday. Ahead 13-10 at halftime, Pittsburgh (1-1) dominated the second half behind Roethlisberger, who completed 24 of 31 passes on the game. Antonio Brown led the Steelers with seven catches for 79 yards. The Jets (1-1) did little against the Steelers' defense after scoring twice early. New York's Mark Sanchez passed for just 138 yards and a touchdown, while his team had only 219 yards of total offense.

Carolina 35 — New Orleans 27

Cam Newton threw for 253 yards and ran for 71 more, as the Carolina Panthers beat the New Orleans Saints, 35-27, in Charlotte on Sunday. Carolina (1-1) rushed for 219 yards as a team. Newton, DeAngelo Williams and Mike Tolbert all ran for scores. Drew Brees had 325 yards passing and a touchdown for New Orleans (0-2). Pierre Thomas carried nine times for 110 yards for the Saints, while teammate Darren Sproles caught 13 passes for 128 yards. Panthers' receiver Steve Smith had three catches for 104 yards.

Indianapolis 23 — Minnesota 20

Adam Vinatieri kicked a 53-yard field goal with 8 seconds to play, as the Indianapolis Colts beat the Minnesota Vikings, 23-20, in Indianapolis on Sunday. Rookie quarterback Andrew Luck passed for 224 yards and two touchdowns for Indianapolis (1-1). He led the Colts' final drive after Minnesota (1-1) tied the game on a 6-yard scoring pass from Christian Ponder to Kyle Rudolph with 31 seconds remaining. Ponder had 245 yards passing and two touchdowns, while Percy Harvin led the Vikings with 12 catches for 104 yards. Minnesota running back Adrian Peterson carried 16 times for 60 yards. Donnie Avery led the Colts with nine receptions for 111 yards.

Cincinnati 34 — Cleveland 27

Andy Dalton threw for 318 yards and three touchdowns, as the Cincinnati Bengals beat the Cleveland Browns, 34-27, in Cincinnati on Sunday. Cincinnati (1-1) was never threatened after Dalton connected with Brandon Tate on a 44-yard score in the third quarter to give the Bengals a 24-10 lead. Cleveland (0-2) was unable to capitalize on big games from rookie quarterback Brandon Weeden, who passed for 322 yards and two scores, and rookie running back Trent Richardson, who ran for 109 yards and scored on both a run and a pass.

Seattle 27 — Dallas 7

Marshawn Lynch ran for 122 yards and a touchdown, as the Seattle Seahawks beat the Dallas Cowboys, 27-7, on Sunday in Seattle. Seattle (1-1) scored 10 first-quarter points off of special teams' plays and Dallas (1-1) never seriously threatened the early lead. Seahawks' rookie Russell Wilson threw for 151 yards and a touchdown. Cowboys' quarterback Tony Romo passed for 251 yards and a 22-yard score to Miles Austin in the second quarter, but he could not rally his team.

Houston 27 — Jacksonville 7

Arian Foster rushed for 110 yards and a touchdown, while teammate Ben Tate added 74 yards and two scores, as the Houston Texans routed the Jacksonville Jaguars, 27-7, on Sunday in Jacksonville. Houston (2-0) led 17-0 at the half, while rolling up 242 yards of offense. Jacksonville (0-2) running back Maurice Jones-Drew had 60 rushing yards and a touchdown catch, but the Jaguars amassed just 117 yards of offense on the day, a new franchise low.

Buffalo 35 — Kansas City 17

C.J. Spiller ran for 123 yards and two scores, as the Buffalo Bills beat the Kansas City Chiefs, 35-17, in Orchard Park, NY on Sunday. Buffalo (1-1) led 35-3 entering the fourth quarter, before Kansas City (0-2) added two late touchdowns on passes from Matt Cassel to Dwayne Bowe. Cassel finished with 301 passing yards and the two scores to Bowe, who had 102 receiving yards on eight receptions. Ryan Fitzpatrick passed for 178 yards and two touchdowns for the Bills.

Miami 35 — Oakland 13

Reggie Bush ran for 172 yards and two touchdowns, as the Miami Dolphins beat the Oakland Raiders, 35-13, in Miami on Sunday. Oakland (0-2) led 10-7 at halftime, but allowed two rushing touchdowns to Bush in the third quarter, including a 65-yard score, to lose control of the game. Miami (1-1) finished with a 263-23 advantage in rushing yards. Dolphins' rookie quarterback Ryan Tannehill threw for 200 yards, a touchdown, and ran for another score. Receiver Brian Hartline caught nine passes for 111 yards for Miami. Carson Palmer completed 24 of 48 passes for 373 yards and a touchdown for the Raiders. Oakland running back Darren McFadden was held to just 22 yards on 11 carries.

San Diego 38 — Tennessee 10

Back-up tight end Dante Rosario caught three touchdown passes, as the San Diego Chargers beat the Tennessee Titans, 38-10, in San Diego on Sunday. San Diego (2-0) dominated thanks to a relentless defense that held the Titans to 212 yards. Chargers' quarterback Philip Rivers threw for 284 yards and the three scores to Rosario, despite being sacked four times by Tennessee (0-2). Malcom Floyd added six catches for 109 yards for San Diego. Titans' running back Chris Johnson had just 17 yards on eight carries.