Utente non registrato (o se non offri la possibilità di registrarsi):
emorizzi nella variaile di sessione il nome del background
Utente registrato:
memorizzi in un appostito campo della tabella tabella degli uteti il nome del background
Quando l'utente sceglie il background memorizzi la variabile $_POST[background'] o nel db nella sessione e stampi il risultato (o la sessione o estrai il dato dal db e lo stampi).
Tutto questo se non ti appoggi ai css. Se invece ti appoggi a css ne crei uno per ogni sfondo (e ci imposti solo quello) ed includi il file in base ai dati che estrapoi con i metodi visti sopre.