PHILADELPHIA, Pa. (AP) - Aaron Nola pitched shutout ball into the eighth inning, Freddy Galvis and Tommy Joseph homered, and the Philadelphia Phillies beat the St. Louis Cardinals 5-1 Thursday to stop a five-game losing streak.
Joseph drove in three runs as Philadelphia, a major league-worst 23-48, won for just the second time in 15 games.
Nola (4-5) allowed one run, four hits and two walks in 7 1/3 innings and struck out eight.
Paul DeJong homered on a hanging curveball leading off the eighth, pulling the Cardinals to 3-1, and Matt Carpenter walked with one out. Pat Neshek relieved and got Tommy Pham to ground into an inning-ending double play, and Luis Garcia followed with a perfect ninth.
Carlos Martinez (6-6) gave up three runs - two earned - and six hits with four strikeouts in six innings. The Cardinals, who made three errors, had won their previous five games against the Phillies.
Galvis homered in the first and Joseph leading off the fifth. With two on and two outs, Andres Blanco scored from second on an errant flip to second by shortstop Aledmys Diaz after his fine grab of Galvis' liner up the middle.
Left fielder Jose Martinez dropped Odubel Herrera's fly ball in the eighth for a two-base error, and Joseph followed with a two-run, two-out single.
Herrera was picked off third base in the fourth inning. In Wednesday's 7-6 loss, Herrera ran through third-base coach Juan Samuel's stop sign in the ninth and was out by 10 feet.
St. Louis has homered in 11 straight games and has 20 home runs since June 16. The Cardinals had scored four or more runs in their previous 11 games.
Cardinals: OF Dexter Fowler did not play, a day after experiencing quadriceps tightness.
Cardinals: RHP Adam Wainwright (7-5, 5.75) is to start for St. Louis as the Cardinals open a three-game home series against the Pirates. Wainwright set career highs for earned runs (nine) and home runs allowed (three) over 1 2/3 innings in a 15-7 loss Saturday at Baltimore, the shortest start of his big league career.
Phillies: Philadelphia opens a nine-game trip at Arizona on Friday night. The Phillies had not announced a starter to pitch in place of Jerad Eickhoff, who was placed on the 10-day DL on Tuesday with an upper back strain.