Ik heb een soort specificeersysteem (zie http://www.kijkshop-ict.nl/) gemaakt waar ik de producten op termen wil weergeven.
De hoofdtermen 'Doorstroming' en 'Prijs' zijn dynamisch en kunnen onbeperkt worden aangemaakt, dat geldt ook voor de termen die onder deze hoofdtermen vallen.
Afijn.. je krijgt aan de zijkant een menu zoiets als dit:

Doorstroming
- < 10 ml
- 10 ml - 19 ml
- 20 ml - 29 ml
- 30 ml - 39 ml
- 40 ml - 49 ml
- > 50 ml
Prijs
- tot 10 euro
- tot 20 euro
- tot 30 euro
- tot 40 euro
- tot 50 euro
- tot 60 euro

Nu dan, een product 'Pomp' krijgt de eigenschappen 20 ml - 29 ml als doorstroming en tot 40 euro als prijs.
Zodra een bezoeker op 20 ml - 29 ml klikt moeten alle producten die hier onder vallen worden weergegeven. Vervolgens klikt hij op tot 40 euro en hierdoor moeten alle producten worden weergegeven die bij 20 ml - 29 ml EN bij tot 40 euro horen. Hoe doe ik dat?

Ik heb nu dit:
echo '<a href="?p=product&amp;id='.$_GET['id'].'&amp;cid='.$_GET['cid'].'&amp;tid='.$objD->id.'">';
echo stripslashes($objD->term);
echo '</a>';

1e: id geeft id van product weer (hoef je niet op te letten)
2e: cid geeft categorie van product weer (hoef je ook niet op te letten)
Waar het om draait is het 3e punt, tid geeft de term id weer. Alle termen hebben een eigen id en daar worden de producten ook op gefilterd. Maar nu als ik op 20 ml - 29 ml wil filteren krijg ik een url als dit:
?p=product&id=5&cid=10&tid=2
Dat is op zich goed.. nu geeft de site alle producten weer met term id = 2 wat dus 20 ml - 29 ml is. Maar nu wilt men vervolgens op tot 40 euro filteren en nu komt een probleem.. zodra hij dat klikt krijgt hij een url als dit:
?p=product&id=5&cid=10&tid=11
Nu verdwijnt dat eerste gefilter, want nu wordt ALLEEN term id = 11 weergegeven.
Ook kan ik niet dit gebruiken:
?p=product&id=5&cid=10&tid=2&tid=11
Want dan gaat hij flippen, omdat 2x tid wordt gebruikt... hoe pak ik dit aan? Hou er ook rekening mee dat er meerdere hoofdtermen zijn, want alles is dynamisch en onbeperkt.
mindoorstroming=10&maxdoorstroming=39&maxprijs=40

Ben je zo niet sneller klaar? Dan ben je ook nog eens flexibeler :).
Hoe weet ik dat het 'mindoorstroming' en 'maxdoorstroming' moet staan in de url.. want de hoofdterm 'doorstroming' is dynamisch... van mij part kan er ook 'merk' staan.. dan moet er 'minmerk' en 'maxmerk' staan.. maar dat weet de url niet, dat niet dynamisch is. Daarnaast is het altijd 1 optie, elk product hangt aan 1 term van elk hoofdterm... dus min of max is niet nodig.. Bovendien heeft elke term (ongeacht bij welke hoofdterm) z'n eigen id.. dus ik kan ook tid=3 doen, dan weet de site dat hij bijvoorbeeld doorstroming '30 ml - 39 ml' moet weergeven.
Niemand die het weet of mij op weg kan helpen?

Reageren