Watch all of the goal from the Sky Bet Championship, plus a full roundup of results, as Forest defeat leaders Swansea, while Stoke lost again.
Sky Bet Championship results
- Fulham 1-1 West Brom
- Blackburn 2-0 Millwall
- Charlton 0-1 Birmingham
- Hull 2-2 Wigan
- Middlesbrough 1-0 Reading
- Preston 2-0 Brentford
- QPR 3-2 Luton
- Stoke 1-2 Bristol City
- Swansea 0-1 Nottingham Forest
Fulham 1-1 West Brom
Semi Ajayi's controversial equaliser salvaged a 1-1 draw for West Brom against Fulham at Craven Cottage and maintained their unbeaten start to the season, as Hollywood actor Will Ferrell looked on from the stands.
Ajayi headed in 10 minutes from time, to cancel out Anthony Knockaert's opener, after Charlie Austin appeared to impede Fulham keeper Marcus Bettinelli at a corner.
It was a cruel blow for Fulham who would have clinched victory long before had it not been for an inspired display of goalkeeping by the visitors' Sam Johnstone.
Johnstone excelled himself when Harrison Reed sent Cairney free with an angled ball. The Fulham captain's shot was firm, true and heading for the top of the net before Johnstone touched it with his finger ends onto the crossbar.
Fulham finally went ahead in the 48th minute courtesy of a moment of sublime skill and imagination from Knockaert. The Frenchman curled a lob that was as precise as it was impudent over the stranded Johnstone and into the far corner.
Craven Cottage expected a change in attitude from West Brom. Surprisingly, none came, so Bilic replaced both Jake Livermore and Matt Phillips before the hour mark, replacing them with Filip Krovinovic and and Kyle Edwards, respectively.
Everything changed 10 minutes from time. The previously insipid Matheus Pereira's corner was swung in under the bar. Bettinelli frantically tried to re-adjust his position and may have been impeded by a flailing arm from Austin.
He could do more than paw the ball on to the head of Ajayi who had the simple task of nodding West Brom level and preserving their unbeaten start to the season.
Swansea 0-1 Nottingham Forest
Swansea lost their unbeaten record as Alfa Semedo struck a late winner for Nottingham Forest at the Liberty Stadium.
Substitute Semedo, on loan from Benfica, struck his first Forest goal five minutes from time to extend his side's unbeaten run to eight games with a 1-0 victory.
Lewis Grabban, a thorn in Swansea's side throughout, broke down the right flank and shook off the attention of Matt Grimes to roll the ball in to Semedo's path and he made no mistake from six yards.
It was no less than Forest deserved against a Swansea side, who stay top of the Sky Bet Championship but would have secured their best ever start to a season with a sixth win from seven games.
Swansea were almost gifted an early opener when Forest goalkeeper Brice Samba hesitated on the ball and Borja Baston came close to profiting.
But Forest were the better side for large parts of the first half and sliced through the Swansea defence after 16 minutes.
Joao Carvalho cleverly flicked Yuri Ribeiro's cross in to Sammy Ameobi's path and the striker forced a full-length save from Freddie Woodman.
Samba Sow also sliced wide and Swansea's frustration at failing to build pressure was evident as defenders Jake Bidwell and Mike Van Der Hoorn tried speculative efforts from distance.
Ayew was becoming an increasing influence on the contest and he tested Samba with a low drive before winning the free-kick which saw the Forest goalkeeper punch clear under pressure.
Forest continued to stand firm and Grabban's strong running and unselfish attitude eventually sealed the points.
Stoke 1-2 Bristol City
Stoke are still searching for their first win of the Sky Bet Championship season following a 2-1 defeat at home to Bristol City.
It had looked like it could finally be Stoke's day after Sam Clucas slotted home from a fourth-minute corner.
But their hopes suffered a major blow when Joe Allen was red-carded for a late lunging tackle on Josh Brownhill after only 12 minutes.
The Potters continued to keep up the pressure and could have doubled their lead but Daniel Bentley did well to keep out James McClean after 21 minutes.
But Stoke, who remain rooted to the foot of table, tired after the restart as Bristol made their man advantage count.
And they completed the comeback win with goals from Famara Diedhiou and Tom Edwards' own goal inside the space of seven minutes.
Clucas got Stoke off to a perfect start when he smashed home following a good lay-off by Bruno Martins Indi. But the game turned on its head when Allen was sent-off for going in with his studs on Brownhill.
Badou Ndiaye dragged an effort wide from distance minutes later as the home side looked for a decisive second. But Diedhiou headed home from the goal-line after a brilliant cross by Jack Hunt on 55 minutes to drag Bristol level.
The visitors were ahead seven minutes later when Edwards turned into his own net while under pressure.
But Hunt again deserved all the credit for the goal after he beat his man before delivering another deadly chipped cross to the back post.
Stoke were then unable to create a good chance to level in the closing stages with an off-target volley from Clucas the best they could offer.
Blackburn 2-0 Millwall
Blackburn scored their first goals from open play at home this season as they overcame Millwall 2-0.
The hosts have found goals hard to come by so far at Ewood Park but they put those worries to rest with an encouraging performance which saw them take the lead through a Derrick Williams piledriver in the first half - his second of the season.
Tony Mowbray's team had to weather some periods of dominance from their competitive visitors, but the better chances fell to Blackburn, who were denied a bigger margin of victory by the outstanding Bartosz Bialkowski.
But Bradley Dack's tap-in late on ensured three points for Rovers who leapfrog their opponents in the league after stretching their unbeaten run against the Lions to eight.
Millwall's away form is a concern, stretching to eight without a victory - the last of which came in March.
Both sides exchanged early long-range shots with no success but the hosts made the breakthrough in stunning fashion in the 18th minute through an unlikely source as the ball was played to the edge of the area by Greg Cunningham and Williams charged onto it before hammering an unstoppable strike into the right-hand corner.
And Rovers made sure of the points in the 74th minute, ending a period of concerted pressure with a fine low ball across the face of the goal from Darragh Lenihan and Dack was on hand to tap in his third of the season at the back post.
Charlton 0-1 Birmingham
Charlton missed the opportunity to go top of the Sky Bet Championship as they were defeated 1-0 by Birmingham at The Valley.
A goal by 16-year-old full old debutant Jude Bellingham in the second half was enough to derail the south London side, who lost for the first time this season.
Charlton were already weakened before kick-off, with talisman Lyle Taylor missing after picking up a knock in the week while playing for Monserrat.
Although neither side created much in the way of chances in the opening period, the first half-chance fell to the hosts when Chris Solly fired over from just inside the box after 23 minutes.
The visitors took the lead seven minutes after the restart when Maxime Colin squared to Kerim Mrabti, who slid the ball into the centre of the area for Bellingham to fire home.
Charlton made a change just before the hour mark when Jonny Williams replaced Erhun Oztumer.
The hosts started to press, but Birmingham still looked dangerous on the break. Colin engineered a solo run after 65 minutes and found Jutkiewicz, who once again saw Phillips nudge his shot over the woodwork.
Charlton made a second change after 71 minutes, with Sam Field making way for Chuks Aneke.
Lee Camp made his first real save a minute later when he did well to block a fierce drive by Solly.
A minute later, the Birmingham keeper was again called into action when he turned away a low drive by Conor Gallagher.
Referee Matthew Donohue allowed six minutes of injury time but caused controversy when he dismissed Charlton manager Lee Bowyer from the touchline.
Hull 2-2 Wigan
Substitute Joe Gelhardt's fine individual goal earned Wigan a 2-2 draw at Hull, meaning Paul Cook's team have now won just two of their last 29 games away from the DW Stadium, but their supporters should be happy with this hard-earned point in East Yorkshire.
There was a sighter for what Wigan might achieve at the KCOM Stadium when Chey Dunkley gave the visitors an early lead.
But once Jarrod Bowen equalised soon afterwards, Hull were superior for long periods.
Kamil Grosicki's excellent free-kick after 20 minutes put the hosts in control, but 17-year-old Gelhardt had the final word - just three minutes after he replaced Gavin Massey.
Despite their awful away form, the visitors began purposefully. And their early labours were rewarded when Dunkley scored after eight minutes.
Charlie Mulgrew's cute free-kick from the right caused unease within the Hull defence - not least when Kieffer Moore's intelligent, glancing header went towards goal.
George Long saved Moore's effort with two hands, but the Hull goalkeeper will be disappointed to have spilled the ball inside the six-yard box. Dunkley reacted quickly to the error and simply could not miss.
Yet with the Wigan fans making self-deprecating fun of a rare lead on their travels, Hull silenced the away supporters just two minutes later.
Bowen has scored far better goals, but the well-regarded winger had the presence of mind to keep calm once his left-footed strike was blocked by a Wigan defender.
The ball ricocheted kindly towards Bowen, who smashed home with his right foot from close range.
Grosicki played a significant role in Hull's equaliser, with a deft cross from the left that was not dealt with by Wigan. But the Poland international soon made a far greater contribution to the game when he put the home team in front.
Grosicki at first won a nicely-positioned free-kick on the left flank when Nathan Byrne had little option but to foul the onrushing winger on the corner of the penalty box.
David Marshall seemingly had all bases covered, but Grosicki surprised the former Hull goalkeeper, who had anticipated the ball going in the other direction, with a lovely strike into the top left-hand corner.
Just when it felt like Hull would cut loose, Gelhardt intervened with a terrific equaliser - and his first goal for the club - after 75 minutes.
Gelhardt had much to do inside the penalty box once Jamal Lowe passed to him in a fairly innocuous position. But the Wigan forward turned Kevin Stewart inside out before he planted a firm, central hit past a statuesque Long to earn his side a point.
Middlesbrough 1-0 Reading
Middlesbrough celebrated their 500th league game at the Riverside in style as Marvin Johnson's second-half strike secured a 1-0 win over Reading.
Twenty-four years after the Teessiders began their new life away from Ayresome Park with a 2-0 win over Chelsea, Jonathan Woodgate's side were triumphant again as they claimed their second Sky Bet Championship success of the season.
Johnson's free-kick settled things, although Middlesbrough were indebted to goalkeeper Darren Randolph for three excellent late saves that prevented Reading from claiming an equaliser.
It was a day when both keepers impressed and Randolph made another important intervention at the start of the second half.
Liverpool loanee Evie Ojaria fired in a crisp drive from the edge of the area but Randolph highlighted why he is regarded as one of the best shot-stoppers outside of the Premier League as he saved to his left.
It proved a key moment as 10 minutes later Middlesbrough claimed the lead. Michael Morrison fouled Ashley Fletcher close to the right touchline, enabling Johnson to whip in a free-kick.
Fletcher lunged at the ball in the six-yard box and while he failed to make any contact, he unsighted Cabral, who could only watch on as the ball nestled in the corner of the net.
Boro almost claimed a second moments later but as Lewis Wing fashioned a shooting opportunity as he dribbled past two men into the box, his effort was blocked by a fine sliding challenge from Andy Yiadom.
Preston 2-0 Brentford
Preston moved into the Sky Bet Championship play-off positions with a hard-fought 2-0 win over Brentford with goals from Sean Maguire and Tom Barkhuizen.
Maguire's early goal handed the Lilywhites the advantage at Deepdale, while Barkhuizen struck following the break against a Bees side who lacked a cutting edge in the final third.
Maguire's penalty appeal after going down under Mathias Jensen's challenge was not entertained by referee David Coote.
But the attacker had his reward moments later when he found himself in space in the box to control Ryan Ledson's cross and tucked past David Raya inside five minutes.
Preston stopper Rudd denied Watkins from an acute angle after 52 minutes following a neat exchange of possession with Benrahma, with the latter's dangerous free-kick from around 30 yards before the hour curling just wide as the Bees searched for an equaliser.
The Lilywhites grabbed their second with 20 minutes remaining after a free Darnell Fisher on the right slid in a low cross for Barkhuizen to slot into an empty net following more questionable Brentford defending.
The victory was Preston's third in four league games, while Brentford slip to 18th in the table after seven matches so far.
QPR 3-2 Luton
QPR held off a second-half fightback to beat Luton 3-2 and clinch a third consecutive Sky Bet Championship win.
Nahki Wells scored twice as the west London side raced into a three-goal lead within 28 minutes at the Kiyan Prince Foundation Stadium, where Ebere Eze also scored - and was twice denied by the woodwork.
However, Luton were gifted a way back into the game when Rangers keeper Joe Lumley inexplicably played the ball straight to Harry Cornick, who helped himself to a goal nine minutes before half-time.
James Collins pulled another back for the Hatters early in the second half but QPR held on.
Eze netted after just three minutes, collecting Ilias Chair's pass and unleashing a right-footed shot from 25 yards which keeper Simon Sluga should have kept out but could only palm into the net.
Toni Leistner's 20th-minute long ball set up Rangers' second for Wells, who controlled on his chest and fired into the far corner.
The outstanding Eze then threaded a pass through to Wells, who slotted past Sluga for his fourth goal in seven appearances since returning for another season on loan from Burnley.
Collins' goal - his fifth of the season - three minutes after the interval further raised Luton's hopes of pulling off an incredible comeback.
Andrew Shinne swung the ball in from the left and Cornick at the far post nudged it back to Collins, who applied the finish.
QPR's worry was not helped by Jordan Hugill making a mess of glorious chances to extend their lead.
The on-loan West Ham striker twice scooped the ball over the bar, first after being set up by Eze and later by Manning.
Hugill had been in fine form, scoring four times in his previous three outings, but this was a performance he will want to forget.
As Luton searched for a late equaliser, Izzy Brown sent a shot narrowly wide, Yoann Barbet's last-ditch challenge denied Collins and Lumley was down quickly to keep out a low shot from substitute George Moncur.