St. Louis — A healthy Jim Edmonds is making a big impact on the St. Louis Cardinals' perfect homestand.
Edmonds homered for the fourth straight game and Jeff Suppan worked six strong innings, helping the Cardinals beat the Chicago Cubs 5-2 on Saturday for their eighth consecutive victory.
Edmonds missed five starts in center field at the end of last month and early July with a groin injury, but the team has clicked since his return.
"I think those couple of days off helped a lot," Edmonds said. "I'm just trying to stay in the lineup and do my job."
Ray Lankford, Hector Luna and So Taguchi drove in a run apiece for the NL Central leaders, who are 8-0 on the homestand with one game to go before the All-Star break and have won 10 straight at home overall. The Cardinals are 31-8 against the Cubs at Busch Stadium since 2000 and have an NL-best 54 victories.
Manager Tony La Russa wants to make sure nobody relaxes.
"We barely won that game," La Russa said. "Especially in the Central, you cannot have an easy series. We're in the same position we've been in for a while: Keep pushing, keep the edge, keep cranking, all that stuff that sounds a little corny but it's absolutely the mind-set we have to have."
The Cubs have lost five in a row, totaling just five runs during the slump.
"It's natural to get down," manager Dusty Baker said. "The key is you can't stay down. The sun is going to come up tomorrow for most of us."
Marlins 5, Mets 2
Miami -- Mike Lowell hit a two-run homer and Ben Howard pitched out of a seventh-inning jam to help the Marlins beat the Mets.
Florida won for only the third time in 10 games, beating Tom Glavine (7-7). He allowed four runs in six innings, and his career record at Pro Player Stadium fell to 6-12 with an ERA of 4.40.
Brad Penny (8-7) shut out New York for six innings but ran into trouble in the seventh. Howard retired Cliff Floyd and Richard Hidalgo with the bases loaded to end the threat and preserve a 4-2 lead.
Armando Benitez got the final six outs, four by strikeout, for his 29th save in 31 chances.
Rockies 6, Padres 2
San Diego -- Aaron Cook took a shutout into the seventh inning and Jeromy Burnitz and Todd Greene each hit solo homers, helping the Rockies to their third straight victory.
Cook (4-3) allowed one run on eight hits with three strikeouts and three walks, and pitched out of trouble all day -- leaving 10 baserunners stranded in six-plus innings.
Dodgers 3, Astros 1
Los Angeles -- Wilson Alvarez outpitched Roger Clemens, and Paul Lo Duca hit a three-run homer for the Dodgers. Alvarez (3-3), making his second spot start since Hideo Nomo went on the disabled list, allowed a run and three hits in six-plus innings. Eric Gagne pitched two perfect innings -- including striking out Jeff Bagwell, Lance Berkman and Jeff Kent in the ninth -- for his 23rd save this season, and 86th in his last 87 attempts.
Braves 4, Phillies 0
Philadelphia -- Mike Hampton pitched eight shutout innings and rookie Charles Thomas homered twice, leading Atlanta.
Hampton (4-8) allowed five hits, struck out five and walked two.
Brewers 5, Reds 0
Milwaukee -- Ben Sheets threw eight shutout innings to lead the Milwaukee Brewers to victory Saturday night over the Cincinnati Reds, who lost Ken Griffey Jr. to a strained right hamstring. Griffey was injured while trying to run down Brady Clark's triple in the fourth inning. The Reds said the All-Star outfielder will return to Cincinnati to have an MRI on Sunday to determine the severity of the injury.
Expos 4, Pirates 0
San Juan, Puerto Rico -- Rocky Biddle pitched five scoreless innings to win his first start in almost two years, and Jamey Carroll drove in two runs for the Expos. Biddle (1-4) gave up two hits, one walk, struck out three and did not allow a runner past first base.
Giants 3, D'backs 1
San Francisco -- Barry Bonds was intentionally walked three times to set the single-season record, and Brett Tomko took a shutout into the eighth inning to lead the San Francisco Giants over the Arizona Diamondbacks on Saturday night.
The three intentional walks gave Bonds 71 before the All-Star break, topping his own record established in 2002.