Triangle ABD similar to triangle ABC : AB/AC = BD/BC = AD/AB which gives
AB^2 = AC * AD (1)
Triangle BCD similar to triangle ABC: BC/AC = BD/AB = DC/BC which gives
BC^2 = AC * DC (2)
Adding (1) and (2) you get AB^2 + BC^2 = AC (AD +DC) and AD + DC = AC. All done :).

Triangle ABD similar to triangle ABC : AB/AC = BD/BC = AD/AB which gives

AB^2 = AC * AD (1)

Triangle BCD similar to triangle ABC: BC/AC = BD/AB = DC/BC which gives

BC^2 = AC * DC (2)

Adding (1) and (2) you get AB^2 + BC^2 = AC (AD +DC) and AD + DC = AC. All done :).

Great stuff. I love this proof.