Bunu neden klasik query gönderimi ile yapmıyorsunuz.
İf(koşullar)
$Sira= "desc"
$Query="sorgular"
Elseif(koşullar)
$Sira="asc"
$Query="sorgular"

"Select ..... Where $Query $Sira "

Gibi..bu kullanım daha hoş olur. Genelde sorguda if kullanımı yavaşlatır(kayıt sayısına göre drğişir, minimal olsada farkeder).
Sorguyu dışarıda halledip göndermek en mantıklı seçim olur diye düşünüyorum.

Edit: where koşulunuzun sonuna order by product asc/desc isteğe göre a/z z/a dizilimi yapabilirsiniz. Sorguda sıkıntınız yoksa order by ile dizilimi seçin yeterli. Tabi doğru anladıysam :)