I agree with one of the others below.
Get a low cost to the Costa Dorada. (Reus airport). Very cheap flights.
Stay in either La Pineda, big waterpark there & enough bars & shops to keep you busy, or Cap Salou. Same as above.
I've been 8 times now.
Last one, Cap Salou, smaller then la Pineda but a 10min walk into Salou which is like Blackpool.
Buses & taxis all the time if you don't like the strolling
Fantastic beache in la Pineda & the water is hot & waist high for miles
http://www.RealHolidayReports.com