Ragazzi per il progetto di Basi di Dati devo realizzare un sito di eCommerce ma sto incontrando alcune difficoltà.

Ho a scrivere il codide dell'eCommerce ho parzialmente fatto il pannello amministrazione e parzialmente fatto l'interfaccia utente del sito vero e proprio ma mi sono appena trovato davanti un problema che va approfondito altrimenti lo gestisco male e vorrei dei consigli...

Quando si arriva in una categoria figlia e che quindi contiene dei prodotti posso:

1) Riordinare i prodotti in base a dei fattori (prezzo, marca, modello)
2) Scorrere nelle varie pagine se i prodotti sono più di una certa quantità
3) Applicare determinati filtri sui prodotti (visualizzare solo quelli di una determinata marca, di una fascia di prezzo o di una particolare offerta)

io ho gestito i primi due punti...ma adesso nell'aggiungere la gestione del terzo mi sono accorto che probabilmente la strada che ho scelto non va bene..

per gestire al meglio tutti e tre i punti è ovvio che quando scelgo un determinato criterio di ordinamento o un filtro questo si deve aggiungere a quelli esistenti e non deve sovrascrivere quindi lo stato attuale.

Ad esempio se ho scelto che i prodotti vanno ordinati per MODELLO e poi scelgo che voglio un filtro che visualizzi solo i prodotti meno costosi di 100€ questo filtro si deve aggiungere a quello dell'ordinamento...

come posso fare per gestire la cosa?