Funziona.Allora il problema era nella funzione implode.Se facevo implode(',',$var) risultava
DELETE FROM tabella WHERE (ID = 'id')AND(codice IN ('1,2')),e mi cancellava solo il codice 1.Mettendo invece implode(" ',' ",$var) risulta in mysql

DELETE FROM tabella WHERE (ID = 'id')AND(codice IN ('1','2'))

L'errore stava negli apici.Grazie a tutti per l'aiuto