Strangely enough, it's the
sensor attached to the back of your
throttle that tells the computer the
angle that your throttle is open
Bad news if it's stuffed or has been adjusted/tampered with, as they are factory fixed and set and are damn near impossible to reset properly outside the factory.
Easiest bet is to chuck the whole throttle body and get one complete with the sensor untouched to solve issues. The two screws holding it in place should be either star headed or some non-standard screw if it's untouched *in theory*. Mine was messed with in the SiR and I had to put an XSi one on.
Check that the wires/loom isn't detached first though, it's a black unit that is attached to the throttle, closest to the firewall.