Juventus moved to the top of Group E after a first half goal from David Trezeguet gave them a 1-0 win over Rosenborg in Turin.
The French international headed home in the 25th minute after Alessandro Del Piero produced a perfect cross from the left. Juve dominated throughout, peppering the Rosenborg goal with shots, but Icelandic keeper Arni Arason produced a series of fine saves to keep his side in the game.
Sparta Prague became the second team to qualify for the second group phase (after Real Madrid) when they beat nine-man Feyenoord 2-0 to ensure either a first or second place finish in Group H. Sparta, with goals from Jiri Jarosik (43) and Jiri Novotny (78) completed the double over the Dutch side after beating them 4-0 at home last month.
Feyenoord only have the remotest mathematical chance of qualifying following Bayern Munich's 5-1 home win over Spartak Moscow.
Bayern showed the form of champions as they dominated from the start. Claudio Pizarro and Elber had already scored twice each before a lapse of concentration in the Bayern area let Vladimir Beschastnykh in for a consolation Spartak goal. To compound the visitors' misery, Alexander Zickler knocked in Bayern's fifth in injury time.
In Group F, Barcelona held off a late fightback from Bayer Leverkusen to secure a 2-1 win.
Patrick Kluivert put the Catalans ahead on 12 minutes as he tucked in a neat pass from Saviola but Carsten Ramelow slid in to convert a corner on 32 minutes and level the scores.
However, Barca regained the lead with a Luis Enrique strike six minutes later and held firm to stay on course for the second phase.
Olympiakos produced the shock of the night when they came from a goal behind at halftime to beat Lille 2-1 and shake up Group G.