try spraying some type of alcohol based cleaner(contact cleaner) down into your shifter area. Be liberal with the fluids-you may have something gummed up in there so that the sensor which tells the ignition that you have it in park is not working correctly. Make sure that the power is off when you run it back and forth ten or more times and make sure that the area is dry-should evaporate fairly fast if it is alcohol. Start your car back up and see if this helps anythings. This has worked before for someone I know.........but an uncommon fix.