The Barcelona striker enjoyed a huge slice of luck when Hungary goalkeeper Gabor Babos saved his shot but could only watch in horror as the ball bounced over the line off Ibrahimovic's chest.

Sweden had looked as though they would have to settle for a draw in Budapest after a penalty from Szabolcs Huszti cancelled out Olof Mellberg's early opening goal.

Portugal dominated the other Group One qualifier with Denmark in Copenhagen but had to settle for a 1-1 draw.

Carlos Queiroz's side had more than 20 shots on goal but were held by the spirited defending of the home side.

The visitors even had to come from a goal behind as Arsenal striker Nicklas Bendtner punished their poor finishing when he gave the home side the lead.

Brazilian-born striker Liedson, a second-half substitute, scored a late equaliser for the visitors with a header four minutes from the end.