Originariamente inviato da gianf_tarantino
il -4 serve per togliere l'OR finale preceduto e seguito dallo spazio.

Mi spiego supponiamo ke $valori_classi_utente contega i valori 5 e 8.
Dopo il foreach:

foreach ($valori_classi_utente as $elem) $condition .= "LOCATE($elem, PIPPO)<>0 OR ";

$condition sarà:

"LOCATE(5, PIPPO)<>0 OR LOCATE(8, PIPPO)<>0 OR ";

Quindi tale stringa che devi mettere nella clausola WHERE, così com'è è sbagliata. Dobbiamo togliere gli ultimi 4 caratteri cioè OR seguito e preceduto da uno spazio.

Spero di essere stato chiaro.
E se un numero ha due cifre?