when dealing with products that have options, especially if the option lists are dynamic generated from recordsets, you should use a product detail page for the add to cart buttons instead of listing them all on one page.
It is problematic at best to list all on one page when dealing with dynamic options.