Da quello che hai postato non si può capire l'errore, perchè non si sa come viene valorizzata la variabile $speciale_cat.
Al di la del problema, mi chiedo, perchè hai inserito in un campo più id di un'altra tabella?
Perchè non utilizzare le relazioni?