Chicago Fernando Vina is making up for his homer drought in a hurry.
Vina hit his third career grand slam Friday as the St. Louis Cardinals beat the Chicago Cubs, 6-3, to snap a four-game losing streak. After going 501 at-bats without a homer, he has three in his last seven games.
"He chose the wrong time, for us, to get hot," Cubs manager Dusty Baker said.
J.D. Drew added a solo shot, and Matt Morris (4-2) struck out nine to improve his record against the Cubs to 8-2. Morris allowed three runs and 10 hits in eight innings.
Jeff Fassero pitched the ninth against his old team to earn his first save of the year.
Corey Patterson and Moises Alou hit solo home runs, but it wasn't enough for the Cubs, who stranded seven, four in scoring position. Carlos Zambrano, pitching a day after his wife gave birth to their second child, gave up six runs and eight hits in 71Â¼3 innings.
"I was just trying to throw the ball inside. It was a very good pitch, but I think he was waiting for that," said Zambrano (3-3). "That was a big mistake. Especially in this series, you can't make a mistake."
Dodgers 9, Expos 5
Montreal -- Fred McGriff hit his 482nd career homer in the eighth inning after Los Angeles' dominant bullpen blew a four-run lead, and the Dodgers recovered for a win.
Giants 9, Braves 2
Atlanta -- Benito Santiago and Jose Cruz Jr. each hit three-run homers and drove in four runs as San Francisco won its sixth straight game. The Giants pulled away from a 3-2 lead in the eighth inning to win a matchup of the teams with the NL's two best records.
Reds 7, Brewers 6 (10)
Cincinnati -- Jose Guillen hit a two-run homer in the bottom of the 10th inning, leading Cincinnati past Milwaukee. Guillen's drive to center off Luis Vizcaino (0-2) gave the Reds their 10th victory in their last at-bat. They've won a season-high five in a row.
D'backs 5, Pirates 0
Pittsburgh -- Curt Schilling limited slumping Pittsburgh to four singles in his first shutout in more than a year. Rod Barajas drove in Arizona's first two runs.
Padres 5, Mets 4
New York -- Xavier Nady hit a tiebreaking two-run homer in the eighth inning and threw out a runner to thwart a Mets' rally attempt as San Diego beat New York and stopped a five-game losing streak. Rondell White doubled twice and drove in three runs for San Diego, which had lost 10 of 11.
Marlins 5, Rockies 4
Miami -- Juan Encarnacion homered to lead off the bottom of the ninth inning, giving Florida a win over Colorado to snap a six-game losing streak. Encarnacion lined Justin Speier's 2-1 pitch into the left-field bleachers, his fifth homer of the season and his third RBI of the night. It handed the Rockies a fifth consecutive loss and their eighth in nine games.
Phillies 5, Astros 3
Philadelphia -- Jim Thome and Mike Lieberthal homered to back Brett Myers as Philadelphia stopped Houston's seven-game winning streak. Myers (3-2), a 22-year-old right-hander, allowed two runs and five hits in 61Â¼3 innings. He struck six and walked three. Myers has pitched at least six innings in each of his seven starts. Roy Oswalt (2-4) dropped his third straight decision.