prova la query sottostante, dovrebbe sostituire una buona parte del codice,
poi la stessa logica la applichi alle query successive presenti nel tuo codice
codice:
SELECT DISTINCT citta, id FROM user WHERE citta in ( 
SELECT id FROM comuni WHERE id_provincia in ( 
SELECT id FROM province WHERE provincia='$provincia' ) )
ps, ho usato i nomi presenti nelle tue query, spero di non aver fatto confusione con gli "id"