sent off for a dangerous two-footed challenge on Andy Parkinson, in a 3–2 loss against Grimsby Town on 25 November 2005. He returned from suspension on 13 December 2005, starting as Oxford United lost 2–1 to Cheltenham Town in an FA Cup second-round replay. In his final season for Oxford, he made 27 appearances scoring twice in league matches. Heart of Midlothian On 24 January 2006 he joined former Oxford manager Graham Rix at Scottish Premier League club Hearts in a £20,000 deal. Press speculation had previously linked him with a move to Hearts' city rivals Hibernian. During his time at Tynecastle, Hackett's first-team opportunities were limited to one start and one substitute appearance. His chances were not helped after Graham Rix was sacked less than two months after signing him. In the summer transfer window of 2006, Hackett was expected to leave the club, with Carlisle United expressing interest in signing him. In July 2006 Hackett held talks with Oxford United's local rivals Swindon Town, but the deal fell through over wage demands. It was rumoured that Hackett was demanding a similar contract to the one he was on at Hearts. His agent sounded out lower-league clubs, and Cardiff City, Bristol City and Hull City were all said to be interested. Millwall On 2 August 2006, Hackett signed a two-year contract with League One side Millwall for an undisclosed fee. Three days later on 5 August 2006, Hackett made his debut for Millwall, coming on as a late substitute in a 1–1 draw against Yeovil Town in the opening game of the season. However, he suffered an injury that saw him sidelined throughout September. He returned from injury on 30 September 2006, coming on as a half-time substitute in a 3–2 win over Rotherham United. Hackett scored his first goal for the club on 14 October 2006, in a 1–0 win over AFC Bournemouth. Two weeks later, on 31 October 2006, he scored against Bournemouth again, in a 2–0 win in the Football League Trophy. This was followed up by scoring in a 3–1 win over Tranmere Rovers. Two weeks later on 18 November 2006, Hackett scored his fourth goal of the season, in a 2–2 draw against Doncaster Rovers. In the first half of the season, Hackett initially started out on the substitute bench before establishing himself in the starting eleven for the side. However, Hackett found himself