Barcelona’s dismal start to the La Liga season continued as a second-half winner from substitute Alvaro Negredo handed Cadiz another major top-flight scalp.
Ronald Koeman’s men had banked on a fortunate own goal to haul themselves level after Alvaro Gimenez bundled the buoyant home side into an eighth-minute lead.
But an embarrassing defensive mix-up in the 63rd minute handed Negredo the chance to hit the winner with his first touch moments after replacing Gimenez and they held on for a 2-1 win.
Having already sunk Real Madrid on their return to the top-flight, the hosts started with confidence against their seventh-placed opponents.
But Gimenez’s opener invited a period of intense pressure as Cadiz ‘keeper Jeremias Ledesma made brilliant saves to deny both Lionel Messi and Philippe Coutinho before half-time.
But Barcelona failed to make the most of their opportunities and were almost made to pay early in the second half when Marc-Andre ter Stegen made a crucial interception to deny Gimenez a second.
Barca levelled in fortunate fashion in the 57th minute when Jordi Alba’s cross hit Pedro Alcala who diverted the ball into his own net.
But within five minutes Cadiz were back in front after Alba’s throw back towards his own area caused panic in the visitors’ rearguard and allowed Negredo to grab his side’s second.
Sergio Busquets fired wide and Messi was once again denied by Ledesma but Cadiz had a good chance to extend their lead when Ter Stegen denied Ivan Alejo.
Heading into injury time, Cadiz substitute Bobby Adekanye wasted an opportunity when he was sent clean through, and the game ended with Messi flopping a free-kick into the Cadiz wall.
Real win eases Zidane pressure
Real Madrid edged Sevilla 1-0 on Saturday to end a three-game winless streak in La Liga and ease the pressure on coach Zinedine Zidane.
An own goal by Sevilla goalkeeper Yassine Bono Bounou in the 55th minute after a touch by Vinicius Junior gave Real the victory at the Ramon Sanchez-Pizjuan Stadium.
Madrid arrived in Seville with Zidane under fire after the team had won only one of their last five matches in all competitions. They had lost two of their last three league games, including 2-1 against Alaves at home last weekend.
Real had the most significant chances in the first half, being stopped by a few good saves from home ‘keeper Bono. The hosts almost opened the scoring with a bicycle kick from striker Luuk de Jong in the 52nd minute, but three minutes later Vinicius helped put Madrid on the board after a cross by Ferland Mendy from the left flank. The Brazilian forward redirected the ball with a soft touch and it hit Bono before going into the goal.
Elsewhere, second-placed Atletico Madrid maintained the pressure on leaders Real Sociedad as second-half goals from Thomas Lemar and Marcos Llorente gave them a 2-0 win over Real Valladolid.
Levante won 3-0 at home against Getafe, who finished the match with nine men after the sending off of Jose Manuel Chema Rodriguez in the seventh minute and Djene Dakoman in the 77th.
Getafe, who drop to 13th place, have not won in six league matches, since beating Barcelona 1-0 in October.
Bundesliga: Bayern hold onto top spot
Kingsley Coman claimed a hat-trick of assists as Bayern Munich held onto top spot in the Bundesliga with a 3-3 draw against second-placed RB Leipzig.
Leipzig led early through Christopher Nkunku and an Emil Forsberg effort early in the second half put them back in front before Thomas Muller’s second in the 75th minute came to Bayern’s rescue.
Reyna stunner rescues Dortmund
A stunning strike from 18-year-old Giovanni Reyna earned Borussia Dortmund a 1-1 draw at Eintracht Frankfurt, who drew their fifth successive Bundesliga game.
Daichi Kamada gave the hosts a ninth-minute lead but, despite missing leading scorer Erling Haaland with a hamstring injury, Dortmund took control after half-time and midfielder Reyna levelled with the second Bundesliga goal of his career.
Dortmund, who had not drawn in their previous 27 league games, are third with 19 points from 10 games.
Eintracht, without a win in eight games in all competitions, are eighth with 13 points.
Elsewhere, Wolfsburg twice came from behind to claim a 2-2 draw at Koln, while Arminia Bielefeld broke a run of seven straight losses with a 2-1 win over fellow strugglers Mainz.
Freiburg are now nine games without a win after they were held to a 2-2 draw at home by Borussia Monchengladbach.
Serie A: Wins for Inter, Juve and Lazio
Achraf Hakimi scored twice as Inter Milan held onto second place in Serie A with a 3-1 win over Bologna.
Romelu Lukaku opened the scoring before Hakimi doubled his side’s lead on the stroke of half-time.
Bologna reduced the deficit through Emanuel Vignato but Hakimi’s second in the 70th minute sealed victory.
Juventus came from behind to win the Turin derby against Torino, who led for much of the match through Nicolas Nkoulou’s ninth-minute strike.
But Juve hit back through two headers in the last 13 minutes from Weston McKennie and Leonardo Bonucci, after which substitute ‘keeper Carlo Pinsoglio was sent off for his excessive celebrations.
Goals from Ciro Immobile and Sergej Milinkovic-Savic saw Lazio hit back from last week’s loss to Udinese with a 2-1 triumph at Spezia.
Ligue 1: Mbappe landmark in PSG win
Kylian Mbappe became only the fifth player to reach 100 goals for his club as PSG struck late to end Montpellier‘s four-game winning streak in Ligue 1.
Colin Dagba’s opener for PSG was cancelled out by Montpellier’s Stephy Mavididi, but two goals in the last eight minutes from Moise Kean and Mbappe earned the leaders a 3-1 win.
Arnaud Muinga and Ignatius Ganago were on the scoresheet as Lens won 2-0 at Rennes to extend the hosts’ winless run to seven games in all competitions.
Let’