Secondo me c'è un errore nella configurazione delle tabelle.
Il php mi sembra corretto, sono un po' stanco ma è anche codice abbastanza semplice.

sei sicuro che nel db il campo prodotto sia UNIQUE o PRIMARY KEY?