Buy a new fan. We've had ceiling fans since the early 80's and I can tell you, at this point most of the parts in a fan (speed controller, ect) are costly enough to where it just makes sense to buy a new one and start over. Older fans just use a very basic speed controller. You can get one at lowes for anywhere between 8 and 20 bucks, but the replacments are crap, so expect to be putting a new one in every few years. Thus why it's just easier to buy a new fan.
Of course it depends upon the fan I suppose. We usually get fans that cost less than 100 bucks (usually in the 60 to 70 dollar range unless it's a small room, in which case the 29.99 specials do just fine.) If you've got some crazy high-end one, you might want to try to repair it, but honestly a fan with a solid state pcb is probably unrepairable.