SAINT-ETIENNE 0-0 BORDEAUX
Saint-Etienne's Champions League hopes took another blow as they maintained their unbeaten league run in 2013 with a 0-0 draw against Bordeaux.
The visitors have now recored 16 draws in Ligue 1 this season, half of those goalless, as they withstood a barrage from the hosts, who could not find a way around Cedric Carrasso.
Pierre-Emerick Aubameyang and Renaud Cohade combined well, with the former unable to divert the ball past Carrasso, as the hosts struggled in the first half.
Joshua Guilavogui produced a fantastic save from the goalkeeper soon after the break, but try as they might, Bordeaux's resilience at the back helped them to a point ahead of their Coupe de France semi-final next week.
OLYMPIQUE DE MARSEILLE 2-1 BASTIA
Marseille picked up their 17th one-goal win this season against Bastia, forcing Paris Saint-Germain to wait to win the Ligue 1 title this weekend whatever the result.
The match, held 21 years to the weekend since the Furiani disaster during a cup match between the two sides, it was Andre-Pierre Gignac who fired the hosts ahead with a fine curling effort which beat Mickael Landreau.
Lucas Mendes hit the crossbar, Landreau's poor clearance deflected off Jordan Ayew and Gignac hit a shot on target as Marseille should have gone further ahead had it not been for profligate finishing.
After the break, they would rue their poor finishing as Bastia equalised. Florian Thauvin's powerful low effort beat Steve Mandanda, ending the goalkeeper's 696 minute record of not conceding a goal.
Marseille pushed nonetheless. Modou Sougou saw his effort cleared off the line, with Gignac hitting the woodwork - but the hosts weren't to be denied. Gignac fired in his 13th league goal of the season late on to claim all three points and keep OM's slim title hopes alive.
TROYES 1-0 EVIAN
Troyes picked up a narrow 1-0 win against fellow relegation strugglers Evian, as they boosted their own survival hopes at Stade de l'Aube.
The winning goal came 12 minutes from time as on-loan PSG forward Jean-Christophe Bahebeck took control of Benjamin Nivet's pass to divert the ball home.
Evian were lacking something, and it was clear that they missed Saber Khelifa, who was banned for two games following his part in the brawl that marred last week's game against PSG.
Troyes remain four points adrift with three games to go, but they've moved off the bottom of the table, with Evian languishing in 18th place.
SOCHAUX 1-0 LORIENT
Lorient's hopes of European football are now over after they lost 1-0 away to Sochaux, who move up to 16th place following a morale-boosting victory.
The game-winning goal came just after half an hour, as Giovanni Sio's cross across the box met Sloan Privat, whose shot beat Benjamin Lecomte.
Lorient should have earlier taken the lead, Jeremie Aliadiere hitting the crossbar after questionable defending from Carlao. At the other end, Jerome Roussillon failed to double his side's tally.
The result leaves Sochaux's destiny in their own hands following a first win in five, with their next game at 20th placed Brest.
MONTPELLIER 2-1 BREST
Champions Montpellier ended their run of three defeats with a narrow 2-1 win away to Stade Brest, who have now lost all of their last eight games.
Marco Estrada opened the scoring, keeping up his record that each of his goals in Ligue 1 have come from outside the box, with his 11th minute effort breaking the deadlock at Stade de la Mosson.
On-loan Marseille forward Florian Raspentino gave Corentin Martins' side a reprieve, equalising nine minutes later.
But Montpellier took the lead again in the second half, via the penalty spot. Souleymane Camara tucked it away neatly as Rene Girard's men moved up to seventh place.
STADE DE REIMS 1-1 AJACCIO
Stade de Reims and Ajaccio played out a 1-1 draw which does little to help either side's survival bid.
It was the visitors who took the lead following a good build-up. Johan Cavalli picked up Dennis Oliech's pass, with his shot being parried by Kossi Agassa into the path of Adrian Mutu who picked up his 11th goal of the season.
The hosts equalised soon after. Pape Souare's cross was met by right-back Aissa Mandi, who easily beat Guillermo Ochoa as the match eventually petered out into a draw.
TOULOUSE 4-2 LILLE
Toulouse picked up a first win in five with a stunning 4-2 victory over Lille, whose European ambitions took a further dent at Stadium Municipal.
Wissam Ben Yedder and Etienne Didot put the hosts into a commanding 2-0 lead after half an hour, before Marko Basa reduced the arrears just before half-time.
Lille equalised soon after the break through Salomon Kalou, but they fell behind once more through Daniel Braaten's 56th minute effort.
Eden Ben Basat fired in Toulouse's fourth, as Lille suffered defeat and lost ground in the race for Champions League football.
RENNES 0-3 NICE
Nice moved to within a point of Olympique Lyonnais in the final Champions League spot with a scintillating 3-0 win over out-of-form Rennes.
Dario Cvitanich fired in the opener for the visitors seven minutes after the break, before Chris Mavinga was shown a harsh red card on 56 minutes.
Nice took advantage of the numerical advantage when Cvitanich struck again from the spot, beating Benoit Costil, before Eric Bautheac sealed the win with six to go, but not before Nemanja Pecjinovic was also sent off in stoppage time.
NANCY 0-3 OLYMPIQUE LYONNAIS
Lyon consolidated third place with a comfortable 3-0 victory away to Nancy at Stade Marcel Picot on Sunday.
The hosts, who are sitting precariously above the drop zone, were in good form before this weekend's clash, but a professional victory from Remi Garde's helped them move closer to qualification for the Champions League.
Bafetimbi Gomis struck the opening goal, easing past Jordan Loties seconds after the break, before Yoann Gourcuff made it 2-0 midway through the second half.
Gomis doubled his tally with a fine finish past Damien Gregorini late on, as Lyon moved four points clear in third. They face champions-elect PSG next week.