Glyn Garner saved a second-half penalty from Collins John as League Two Leyton Orient dumped Fulham out of the FA Cup.
Tomasz Radzinski had a goal ruled out for the Premiership side before strikes from Craig Easton and Joe Keith put League Two Orient firmly on top.
Having scored just after the restart, John fluffed a chance to grab his second from twelve yards after a foul on Luis Boa Morte as Garner saved his weak spot-kick. The Orient keeper made an excellent save from a late Sylvain Legwinski lob and the visitors thoroughly deserved their famous victory.
A poor first half was enlivened by a sweeping Fulham break which was started by John in his half and finished with Radzinski ramming home from close range but the home celebrations were interrupted by an offside flag. The visitors came to play, as well, as Easton silenced Craven Cottage when his deflected shot looped over a helpless Tony Warner after Fulham had failed to clear a cross from Keith.
Legwinski went close for Fulham but Orient doubled their lead when Keith’s seemingly tame effort surprised Warner. Chris Coleman’s side responded after the break when John surged through the O’s defence to halve the arrears and, after Boa Morte had been pulled down in the box, the young Dutch striker had a chance to bring the Premiership level. But Garner guessed right and palmed away the penalty diving to his left to keep Orient in front.
Martin Ling’s men held firm despite late Fulham pressure to advance into round four.
FULHAM (4-4-2): Warner; Rosenior, N. Jensen Knight, Pearce (Goma 86); Elliott, Legwinski, Elrich (Timlin 62), Boa Morte; John, Radzinski. Subs (not used): Drobny, Rehman, Milsom.
BOOKED: Rosenior, Pearce.
GOAL: John (50).
LEYTON ORIENT (4-5-1): Garner; Lockwood, Mackie, Miller, Zakuani; Keith (Carlisle 85), Tudor (McMahon 72), Easton, Simpson, Alexander (Barnard 90); Ibehre. Subs (not used): Morris, Saah.
GOALS: Easton (17), Keith (44).
REFEREE: Peter Walton (Northamptonshire).