HOUSTON -- Luke Scott made up for his defensive lapse in a big way.
The Astros kept their slim wild-card hopes alive as they crept to within five games of the Dodgers, who played the Diamondbacks later Saturday night.
With the Astros leading 4-3, Scott dove for David Eckstein's line drive in the ninth. The ball skipped past Scott for a double that tied the game.
"I couldn't tell if he could have made that play or not," manager Phil Garner said. "But he sure did something to make up for it."
Roy Oswalt, who started and allowed three runs and nine hits in seven innings, agreed.
"It looked like he didn't really see it well," Oswalt said of the defensive miscue. "But he made up for it at the plate."
Scott made no excuses for the play. "It was another tough play," he said. "I didn't know if it would stay up or sink."
It was the second straight ninth-inning, winning hit for the Astros after Craig Biggio's single won it on Friday. But it was something new for Scott, who had trouble describing his feelings.
"Truthfully, I can't really put it in words," he said. "This is my first time to get a walk-off hit. I'm still way up there. I'm just walking on clouds."
After Eckstein's double to tie it, the Cardinals loaded the bases before Juan Encarnacion hit a bouncer to third that ended the inning as St. Louis left 10 men on base. But manager Tony LaRussa took the loss in stride.
"I'm not at a loss," LaRussa said. "I thought when Encarnacion came up, it was our time for a bloop. I thought it was going to be our turn. Hey, you come back from 3-1 and you tie it in the ninth, I'll take it every night. That's what I prefer to focus on."
The Cardinals are not dwelling on the fact they have lost four straight and eight of their last nine on the road. Their magic number to win the NL Central remains at five.
"The only thing I'm worrying about is tomorrow's game," Scott Spiezio said. "I think the team's focus is on each individual game. We don't really look at how many games we have left or how many we're up. So we just have to win tomorrow."
But some players are growing concerned.
"Obviously, you don't want to hit a slide at the end of the year," said starter Jason Marquis, who allowed three runs and nine hits in 5 1/3 innings. "We know what we're capable of doing. We know that all year we've bounced back and we've been pretty resilient.
"Looking on the positive side, if things turn out the way we want, in the long run this may actually help us, being competitive until the end."
Tyler Johnson (0-4) walked Morgan Ensberg to lead off the ninth. Lance Berkman then singled before Scott homered to right. He has 10 homers and 35 RBI in 46 starts since being recalled from Triple-A Round Rock on July 13.
Dan Wheeler (3-5) blew his third save of the season, but held the Cardinals to only one run to take the win.
The Astros, who have won four straight, took a 4-3 lead in the seventh on Aubrey Huff's 11th homer for Houston and 19th overall.
Eckstein, who now has six hits in his first 10 at bats since returning from a left oblique strain Friday, led off the game with a double. John Rodriguez drove him in with an RBI single.
Berkman's run-scoring double in the first tied the score at 1.
Scott had given the Astros a 3-1 lead in the third with a two-run homer.
The Cardinals tied the game in the seventh when Chris Duncan's 20th home run bounced off the left-field foul pole and scored Eckstein. Duncan's homer was his 17th in the second half of the season, most ever by a St. Louis rookie. It broke a tie with Albert Pujols for the old mark.
Scott has four triples and six home runs in his last 13 games. ... Pujols remains one RBI shy of matching his career best of 130 set in his rookie season in 2001.