Posta il codice della form, innanzi tutto!
Poi fai un controllo: nel HTML generato dal tuo script, controlla che il menù a tendina sia compilato a dovere e che magari non sia stampato l'ID sbagliato nella label delle varie categorie.



p.s. il DO/WHILE non dico che sia deprecato, ma neanche tanto usato, in quanto stampa almeno un risultato anche nel caso non ci siano righe da stampare.