Fulham FC moved a step closer to the UEFA Europa League knockout phase on a raucous night at Craven Cottage.
Damien Duff's early strike was cancelled out by Andraž Kirm but Fulham were soon back ahead with a superb volley from Andrew Johnson, thriving in this competition. Johnson and substitute Steve Sidwell struck from clever set pieces after the interval to leave Fulham in Group K second place, four points ahead of Wisła and Odense BK, needing one win to advance to the last 32.
Fulham made five changes from their Group K loss at Wisła a fortnight ago. But it was one of the players that remained, Duff, who broke the deadlock, starting and finishing a flowing move involving Bobby Zamora and Johnson.
Wisła were level within four minutes as David Biton found Łukasz Garguła, who laid off for Kirm to produce a shot that deflected off John Arne Riise and past the wrong-footed Mark Schwarzer. The massive away following were in raptures.
That pace could not be maintained but the game was still open and on the half-hour Fulham were back in front. After a corner Danny Murphy crossed from the right and Johnson's twisting volley was unstoppable, fizzing in off the post.
The visitors began the second half strongly and Schwarzer did well to stop a defected Gervasio Núñez free-kick. But in a well-worked set piece at the other end, Murphy slipped the ball to Zamora, who played it wide for Johnson to strike his fifth group goal from a tight angle.
Substitute Tsvetan Genkov headed over for Wisla as they continued to push in their 100th UEFA competition fixture but Sidwell removed all doubt when he headed a Duff cross on to the bar before lashing in the rebound. Kew Jaliens hit the woodwork himself for the visitors, who now have it all to do.