GLENDALE, Ariz. -- Carson Palmer threw 19 yards to Larry Fitzgerald with 32 seconds left in overtime for the game's only touchdown and the Arizona Cardinals escaped with an 18-15 victory over the winless San Francisco 49ers on Sunday.
The scoring had been limited to nine field goals on an ugly afternoon in the desert before Palmer directed a seven-play, 75-yard drive with 1:52 to play.
Fitzgerald, who had three catches for 13 yards before the winning grab, rose to catch the ball under tight coverage by Rashard Robinson.
Robbie Gould kicked his fifth field goal, a 23-yarder with 2:24 left in overtime to put the 49ers ahead 15-12.
Phil Dawson kicked four field goals for the Cardinals (2-2), whose two victories both have come in overtime.
The 49ers (0-4), losing to the Cardinals for the fifth time in a row, won the coin toss to start the overtime. They used up 7:36 of the extra session, which was shortened from 15 to 10 minutes this season.
Palmer went 5 of 7 on the winning drive. Under duress all day behind an injury-riddled offensive line, he completed 33 of 51 for 357 yards and was intercepted in the end zone on a tipped pass on the game's opening series. Palmer was sacked seven times, four in the fourth quarter and once in overtime, by a 49ers team that had three sacks total in the first three games.
Gould, who hasn't missed a field goal since 2015 (20 for 20), connected from 49, 39, 47, 48 and 23 yards. Dawson, replaced by Gould as 49ers kicker this season, was 4 for 4, making field goals of 29, 43, 50 and 32 yards.
San Francisco failed to score a touchdown for the third time this season and has lost its first four games for the first time since 2010.
There were a combined 23 penalties for 193 yards, 13 against the 49ers for 113 yards, 10 against Arizona for 80.
Carlos Hyde gained 68 yards in 16 tries for the 49ers.
The Cardinals failed to score a touchdown in three trips to the red zone and were 3 for 14 in red-zone appearances this season before the winning TD.
Arizona took the opening kickoff and went 71 yards in 13 plays to the San Francisco 4. But on third down, Jimmie Ward tipped Palmer's pass and Ray-Ray Armstrong intercepted in the end zone.
The Niners took the lead by moving from their 24 to the Arizona 31, where Gould's 49-yard field goal made it 3-0. And the field goal fight was on.
ANTHEM: The 49ers, with whom the national anthem issue began with Colin Kaepernick's kneeling during it more than a year ago, had their first chance to react to President Trump's criticism of athletes kneeling during the song. The players formed two lines. Those in the front kneeled and the players in the back remained standing, setting off a round of boos at University of Phoenix Stadium.
Many of the standing players placed one hand on their heart, the other on the shoulder of a kneeling teammate in a sign of solidarity.
Arizona is at Philadelphia next Sunday.