SAN DIEGO -- With three weeks left in the season, Arizona manager A.J. Hinch implored his club to finish strong.
Hinch delivered the message in a pregame meeting to try to pull out of last place in the NL West, where they trail the Padres by two games.
"I challenged our team to go out and prove that the Padres are not a better team than us," Hinch said. "That was a good start tonight."
Arizona won for just the second time in 11 games. San Diego has a 27-18 record (.600) since July 28 and has won 11 of 14 series during that span.
"It gave us good motivation to go out there and show that we are a good team," Allen said. "Every guy wants to come up and do well."
Gerardo Parma started the winning rally in the 10th with a one-out infield single off Adam Russell (2-1). Ryan Roberts then singled with pinch-runner Trent Oeltjen taking third. Allen got ahead in the count 3-0 before he lined a 3-1 pitch to right-center to bring home the go-ahead run.
Pinch-hitter Alex Romero then grounded out to bring in another run as Arizona won for just the second time in 11 games.
"Those pitchers are tough sometimes," Correia said. "You've never seen him before but we knew he was a good hitter. There is no real scouting report, so it's tough."
San Diego scored runs in the sixth and seventh off Buckner, who allowed nine singles in six-plus innings and struck out a career-high eight. But the Padres stranded 11 runners, including twice leaving the bases loaded.
"We've done a great job over the last six weeks of situational baseball on the offensive side," San Diego manager Bud Black said. "We didn't execute like we have been."
Arizona left 13 runners on base.
Although Buckner has lost his last five decisions, he turned in his second straight solid start. The right-hander got no decision in his previous outing last Tuesday when he allowed one run on five hits over seven innings in a a 5-4 loss to the first-place Los Angeles Dodgers.
"I think my command overall and getting ahead of guys have been the biggest difference," Buckner said.
Correia allowed two runs on seven hits over 6 1/3 innings with seven strikeouts and two walks.
The Padres scored in the sixth on consecutive singles by Tony Gwynn Jr., Adrian Gonzalez and Chase Headley to start the inning. San Diego loaded the bases with one out on Drew Macias' single but Buckner got out of the jam.
Pinch-hitter Luis Gonzalez led off the San Diego seventh with an infield single and Buckner had a throwing error on Everth Cabrera's sacrifice bunt. Scott Schoeneweis came in, and after a strikeout, hit Gonzalez to load the bases. Headley followed with a groundout to tie the game 2-all.
Miguel Montero got Arizona going in the second when he led off with a walk and Mark Reynolds followed with a single off Correia. After Correia got two outs, he intentionally walked Allen to pitch to Buckner, who hit a ball into the right-center gap for a two-run single.
Reynolds made a great catch when he dived into the stands in foul territory down the third-base line on a pop foul from Cabrera in the third inning.
Reynolds struck out once to increase his major league-leading total to 194. ... Padres 2B David Eckstein was a late scratch due to a stiff neck. ... San Diego recalled RHP Ernesto Frieri and OF Luis Durango from Double-A San Antonio.