You could have them enter their promo code in the beginning. You then have a mySQL database with all your promo codes in it. If it is right then you rederict it to a seperate page where you the items are priced directly. If you want to have an "experation date" for your promo codes. You can go here for details.