One-day international, Chttagong: Bangladesh 244-9 beat Zimbabwe 204 by 40 runs
Saleh's half century was his fifth in a one-day international
Manjural Islam Rana produced his best one-day figures as Bangladesh defeated Zimbabwe by 40 runs in Chittagong.
The left-arm spinner took 4-34 as the tourists were bowled out for 204 in reply to Bangladesh's total of 244-9.
The result kept the home side's hopes alive in the five-match series after Zimbabwe won the opening two games.
Opener Rajin Saleh top scored with 77 in the Bangladesh innings and their total proved sufficient despite them losing their last eight wickets for 92.
Zimbabwe used eight different bowlers, with off-spinner Prosper Utseya (2-33) doing a fine job to stifle the Bangladesh scoring rate mid-innings.
Home skipper Habibul Bashar won the toss for the first time in the series and his decision to bat first looked a good one as Saleh and Nafis Iqbal put on 58 for the first wicket.
Iqbal was bowled by Christopher Mpofu for 24, but Aftab Ahmed emerged from a run of poor form to lend Saleh solid support as they added 89.
Saleh hit a six and six fours but his innings was cut short by a brilliant catch from Dion Ebrahim off the bowling of all-rounder Elton Chigumbura.
Aftab followed four balls later, bowled by Utseya for a useful 38, and although Bashar made 26 and Mashrafe bin Mortaza chipped in with a useful 21 at a rate of a run per ball, Zimbabwe had the upper hand over the closing overs.
They made a solid start in reply with Barney Rogers and Stuart Matsikenyeri sharing a stand of 45 before the latter was stumped off Manjural for 17.
Ebrahim and Hamilton Masakadza did not last long, but the vital wicket was that of Rogers, who made his second successive half century before he was trapped lbw by medium pacer Khaled Mahmud for 51.
Mahmud also removed Brendan Taylor for 26, leaving Tatenda Taibu and Chigumbura as Zimbabwe's main hopes of a successful run chase.
Chigumbura raced to 27 off 18 balls as they added 44 in six overs, but he fell lbw to Manjural, who also took the catch off paceman Mashrafe bin Mortaza to dismiss Taibu for 42.
It took Bangladesh only six overs to pick up the last five Zimbabwe wickets as they were all out with 13 balls of their innings remaining.
Manjural was well supported by the seamers with Mahmud, Mortzaz and Nazmul Hossain each claiming two victims.
Bangladesh: Habibul Bashar (captain), Nafis Iqbal, Aftab Ahmed, Rajin Saleh, Mohammad Ashraful, Khaled Mashud, Khaled Mahmud, Mashrafe Mortaza, Enamul Haque junior, Nazmul Hossain, Manjural Islam Rana.
Zimbabwe: Tatenda Taibu (captain), Stuart Matsikenyeri, Douglas Hondo, Brendan Taylor, Christopher Mpofu, Elton Chigumbura, Hamilton Masakadza, Tinashe Panyangara, Dion Ebrahim, Barney Rogers, Prosper Utseya.