ST. LOUIS -- First the starting pitching flagged, then the offense fritzed. On Saturday, the Cardinals' bullpen showed further signs of fraying. Now, the club's playoff chances have just about faded out.

Ryan Franklin permitted a two-run homer to Alfonso Soriano in the eighth inning, capping a Cubs comeback and sending the Cardinals to their ninth straight loss, 3-2, in the opener of a day-night doubleheader. The defeat dropped St. Louis seven games out of first place with 16 games remaining on the schedule. It's the Cardinals' longest losing streak since they dropped 10 in a row in 1980. The early game was a makeup for the game that was postponed due to the death of Josh Hancock on April 29.

A night after Jason Isringhausen was reached for three key runs in the ninth, Franklin saw his personal slump deepen. Franklin, a bullpen bulwark for 4 1/2 months, has been scored upon in four of his past six outings. He's given up four home runs in 10 appearances dating back to Aug. 22.

Braden Looper pitched superbly for the Cardinals, departing with a 2-1 lead after seven innings. But Franklin issued a leadoff walk to pinch-hitter Cliff Floyd, bringing up Soriano, who has been a nemesis for the right-hander over the years.

Franklin got ahead of Soriano with a 1-2 count, then missed with two pitches to send the count full. He then left a slider up and over the plate, and Soriano tattooed it to left field to give Chicago its first lead of the game. With the homer, Soriano improved to 11-for-30 with four long balls lifetime against Franklin.

"I knew he's had success against me prior," Franklin said. "I got him out last night. Today, I made a mistake. That's pretty much it. There's no trying to figure anything. I made a mistake, and he's a good enough hitter [that] he hit it."

Manager Tony La Russa said he had no qualms with letting Franklin face Floyd and Soriano, despite the history.

"Have you seen what Ryan's done against Chicago?" La Russa asked, referring to Franklin's 4 2/3 scoreless innings against the Cubs earlier this year.

"What matchup are you talking about?," La Russa continued. "Check Soriano this year against him. Soriano, that's his American League numbers. Ryan's really pitched well against this club. That got our attention when he first faced him, but a lot of that is corrected."

Franklin had faced Soriano only one previous time in 2007, striking him out on Friday night.

Still, if the Cards had taken advantage of their offensive chances, Franklin might have had more margin for error. St. Louis went 1-for-7 with runners in scoring position. The only hit was Jim Edmonds' two-run double in the first, giving the Cards their only runs of the afternoon.

Twice the Cubs gifted the Cardinals a runner with an error, and twice St. Louis was unable to capitalize. A Derrek Lee miscue put Miguel Cairo on first to lead off the second inning. Looper's sac bunt got Cairo into scoring position with one out, but neither Brendan Ryan nor Aaron Miles could advance Cairo. In the sixth, Edmonds went all the way to second on Soriano's no-out error, and Yadier Molina sacrificed him to third. Cairo popped up, though, and Looper struck out to end the inning.

The loss wasted a beautiful outing by Looper, who held Chicago to three hits and two walks over seven innings. As part of a rotation reshuffle earlier in the week, Looper was pushed back from Friday night to Saturday afternoon, giving him the perfect setup. The right-hander has been outstanding at home, in daylight and against the Cubs. Without help from his offense or his bullpen, though, Looper couldn't win the game on his own.