SAN DIEGO -- The San Diego Padres held their annual "Shirts Off Their Backs" fundraising raffle Thursday, when fans walked away with players' jerseys after the final regular-season home game.

The Padres might as well have offered the bats out of their hands. When they needed it most, their offense simply wasn't there.

Held to just three singles, the Padres lost 1-0 to the Chicago Cubs and were pushed to the brink of elimination from the playoff race. Brad Snyder, a 28-year-old rookie who was called up from Triple-A less than a month ago, hit an opposite-field RBI single off All-Star closer Heath Bell with one out in the ninth inning.

The loss reduced San Francisco's magic number for clinching the NL West to one and idle Atlanta's magic number for clinching the NL wild card to two.

The Padres trail the Giants by three games going into the final three-game series at San Francisco.

"Man, it just hasn't been very good," All-Star slugger Adrian Gonzalez said about the offense. "We've got to find a way to be very good for three days. That's all it takes. We struggled to get runners on base, we struggled to bring them across the board. Our pitching's done everything possible to put us in a position where we should be celebrating right now, and we haven't.

"Plain and simple, we've got to hit," he said. "We've hit balls good. We just haven't found holes."

San Diego, which started the season with the second-lowest payroll in the majors, led the NL West for much of the summer until staggering down the stretch. The Padres have lost 22 of 34 games since Aug. 25, when they were 76-49 and had a 6½-game lead over the Giants in the NL West.

In their somber clubhouse, the Padres kept saying they can win three straight games. But to simply force a one-game playoff for the division title, they'll have to get past Matt Cain, Barry Zito and Jonathan Sanchez. Sanchez no-hit San Diego in 2009. San Francisco's manager, Bruce Bochy, was forced out as San Diego's skipper after the Padres lost to St. Louis in the first round of the 2006 playoffs.

San Diego has won 10 of 15 games against the Giants this season.