I had this exact problem(key turns and all) with a Celica. It was the ignitor not sending a feedback signal to the ECU. Grabbing one from a wreckers will save you some money, if it is the case.
Have you done the diagnostic code check? Code 14 is the one I think it will be if it shows.
You need a short piece of wire, strip both ends, open the diagnostic cover(possibly located near the strut tower or alternator, in the engine bay) and 'bridge' terminals TE1 and E1. Then turn on the ignition and watch the CEL(check engine light- on the dash), it will flash, if it is constant then you have no fault codes if not then count the flashes, there will be a pause and it will start again, keep counting. The idea is if the first sequence flashes once (for example) then write down one, then after the pause if it flashes four times then the code is 14.