Dovendo scambiare dati tra server e client ti serve un linguaggio lato server.
Tenendo conto di parametri come curva di apprendimento, costo, diffusione, stabilità, ecc...la risposta ovvia è PHP + mysql come database.

Per quanto riguarda gli aspetti giocosi del sito:
se vuoi una cosa statica, tipo un'immagine che viene applicata a un'altra immagine, opterei per l'uso delle gd.
Le gd sono librerie grafiche per la manipolazione di vari formati file e che ho scoperto essere semplici da usare e molto efficienti. Le gd sono abbastanza diffuse tra gli host anche se è meglio controllare!

Se invece vuoi qualcosa di più pirotecnico e dinamico l'unica è usare qualche applicazione flash o java come linguaggio lato client.

Certo che vuoi incominciare dalle cose semplici, eh?