Chiaramente, l.citta non puà assumere più valori contemporaneamente (AND)

Prova così:

Codice PHP:
SELECT p.*, count(l.citta) as c
FROM prodotti p
LEFT JOIN prodottoID_luogoID pl ON p
.id pl.prodotto_id
LEFT JOIN luoghi l ON pl
.luogo_id l.id
WHERE
l
.citta LIKE '%….%' OR
l.citta LIKE '%….%' OR
l.citta LIKE '%….%' OR 
...
GROUP BY p.id
HAVING c 
>= $numero_di_luoghi_nella_query