City hold on
Manchester City were all but eliminated from the Champions League despite producing a stirring fightback against Ajax to draw 2-2.
Yaya Toure and Sergio Aguero struck as City fought back from 2-0 down but the Premier League champions were forced to settle for a draw and remain winless in Group D despite a frantic finish.
Siem de Jong, who scored in the Dutch side's defeat of City in Amsterdam a fortnight ago, found the net twice for the visitors inside the opening 17 minutes at the Etihad Stadium.
The result left City with just two points from four games and needing two victories and other results to go their way to claim a place in the knockout stages.
At the Bernabeu, Mesut Ozil's 89th-minute free-kick rescued a point for Real Madrid from a pulsating 2-2 draw with Borussia Dortmund to keep both sides on course to qualify from Champions League Group D.
Marco Reus had deservedly put the German champions in front on 28 minutes with a spectacular volley from Robert Lewandowski's knockdown, but Pepe levelled for the hosts six minutes later with a bullet header from Ozil's cross.
The visitors went back in front seconds before the break thanks to Mario Gotze's chip over Iker Casillas that found the net via a deflection off Alvaro Arbeloa, but Madrid were much improved after half-time and finally got level thanks to Ozil's perfectly placed free-kick.
The draw leaves Dortmund on top of the group with eight points from four games with Real in second on seven, three points clear of Ajax in third.
Elsewhere, Arsenal squandered a two-goal lead to draw 2-2 in Germany as Schalke denied Arsene Wenger victory on his return from a touchline ban.
The Frenchman has been forced to watch the first three Group B fixtures from the stands, including the surprise 2-0 defeat at the hands of the Bundesliga outfit a fortnight ago.
Having held off Schalke's intense early pressure, Theo Walcott netted his 50th goal for Arsenal against the run of play in the 18th minute after Olivier Giroud was dispossessed in the box.
The France international got in on the action eight minutes later with a superb diving header, but Klaas-Jan Huntelaar reduced the deficit in first half stoppage time.
Arsenal were pinned back as Schalke poured forward in search of an equaliser and, despite goalkeeper Vito Mannone's best efforts, it came when Jefferson Farfan fired home via a Thomas Vermaelen deflection.
Olympiakos put themselves back in the hunt for a spot in the last 16 of the Champions League with a second successive victory over Montpellier.
Olympiakos left it late before snatching a 3-1 victory with two goals in the last 10 minutes from Leandro Greco and Kostas Mitroglou.
Those strikes came after Younes Belhanda's second-half penalty for Montpelier had cancelled out Paulo Machado's early opener for the the Greek side.
Olympiakos had lost their opening two matches in Group B but that result lifts them onto six points, two points behind leaders Schalke and one adrift of second-placed Arsenal.
Montpellier, meanwhile, remain on one point and all but out of contention for a top-two berth.
Alexandre Pato denied Malaga the chance to seal progression to the last 16 of the Champions League at the San Siro, as the Brazilian striker kept AC Milan within touching distance of qualification in a 1-1 draw.
Malaga's perfect debut season on Europe's biggest stage looked set to continue unchecked as Eliseu's first-half goal put the Spaniards on the verge of wrapping up top spot in Group C.
But Pato capitalised on fine work from Kevin Constant to register his first Milan goal since December last year - spoiling Malaga's clean sheet in the competition - to book second place ahead of Anderlecht, who are one point behind the Serie A giants.
In the other game Dieumerci Mbokani's first-half goal kept Anderlecht's Champions League hopes alive as they finally earned their first win in Group C, 1-0 against Zenit St Petersburg.
Defeat in Russia two weeks ago had left the Belgian champions bottom of the group and needing victory at the Stadium Constant Vanden Stock to have any realistic chance of reaching the last 16.
And Mbokani's neat finish coupled with a solid defensive showing lifted them ahead of their opponents to third in the standings, a point behind second-placed AC Milan after the Italians drew with Malaga.
Porto lost their 100% record but booked their place in the knockout stages of the Champions League after a goalless Group A draw against Dynamo Kiev in Ukraine.
Porto's point takes them to 10 points in the group and guarantees their progress after a game of few clear-cut chances which leaves the hosts with little chance of progressing.
Finally Zlatan Ibrahimovic had a hand in all four goals as Paris St Germain thrashed Champions League whipping boys Dinamo Zagreb 4-0.
PSG took the lead after 16 minutes when Ibrahimovic produced a perfect cross from the right for Alex to turn the ball home from 12 yards.
Ibrahimovic was again the provider with a pass from the left that Blaise Matuidi slotted into the back of the net, a move which was repeated five minutes later for Menez to this time benefit from his Swedish team-mate's supply to make it 3-0.
Yet another Ibrahimovic assist saw Guillaume Hoarau complete the rout 20 minutes from time as PSG moved onto nine points, one behind Group a leaders Porto.