First post so please be gentle :-)
At Hempstead Valley O2 Shop they seem to be offering £50 in store discount on new iPhone contracts.
I am already on O2 and found they were not offering any decent incentive to upgrade my existing phone and was offered the 16Gb iPhone 3GS on a 24 month/£35 tariff contract for £39 instead of the usual £89 as long as I took a new contract.
Only downsides are you have to cancel your old contract but I was also able to port my existing number to the new iPhone SIM, and you may be charged twice in one month - once for your old contract and again for the new one but at £35per month that was still cheaper than paying £89!
Hope that makes sense and saves somebody else a bit of cash.