In Los Angeles, Cesar Izturis hit a pair of RBI doubles off Zach Day (7-5), and Odalis Perez (10-9) won his fourth straight start, allowing nine hits in eight innings as Los Angeles beat Montreal.
Eric Gagne got three outs for his 42nd save, extending his streak of consecutive saves converted to 50 -- four short of Tom Gordon's record.
Mets 5, Padres 1
In San Diego, Ty Wigginton hit a three-run homer in the first inning off Oliver Perez (4-7) and Roger Cedeno added a two-run shot in the second as New York avoided a three-game sweep to San Diego.
Astros 9, Cubs 3
In Houston, Craig Biggio hit a two-run homer as Houston beat Kerry Wood (11-10) for the third time this season to give Houston a win over Chicago.
Cardinals 6, Pirates 3
In St. Louis, Jim Edmonds hit his second homer of the game, a three-run shot off Joe Beimel in the ninth as St. Louis beat Pittsburgh.
Rockies 5, Marlins 4
In Denver, Todd Helton led off the ninth inning with a homer against Braden Looper (4-3) as Colorado completed a three-game sweep of Florida.
Florida rallied for two runs in the eighth and tied it in the ninth on Alex Gonzalez's homer off Justin Speier (3-1).
Diamondbacks 9, Reds 3
In Phoenix, Junior Spivey homered for the second time in three games and Luis Gonzalez drove in two runs to lead Arizona over Cincinnati.
Giants 4, Braves 3, 10 innings
In San Francisco, Barry Bonds beat Atlanta with an extra-inning home run for the second time in three days, connecting for his 652nd career home run in the 10th inning of San Francisco's victory.
After Atlanta tied it with a stirring, three-run rally in the ninth, Bonds hit his major league-leading 39th homer on the first pitch he saw from Trey Hodges (3-2). The drive -- Bonds' 100th career homer at Pacific Bell Park -- landed in the center-field stands, and his teammates mobbed Bonds at home plate.



