If you want to stay in Heidelberg itself you could try the Hotel Central , Kaisersrasse 75, it is right across the road from the railway station , has a secure parking garage and is 10 minutes walk from the town centre.
Its been a few years since I used it so I'm not sure of the prices but we used to stay there every year on the way down to Switzerland.
If not try www.hotels.com or www.booking.com we've had good rates recently from both and they both have good websites to search for accomodation in Germany