SELECT id, titel, prijs, foto1, datum FROM advertenties WHERE hcat = '1' AND scat = '3' AND mcat = '6' OR hcat = '4' AND scat = '3' AND mcat = '6' ORDER BY datum DESC
SELECT id, titel, prijs, foto1, datum FROM advertenties WHERE hcat ='1'AND scat ='3'AND mcat ='6'OR hcat ='4'AND scat ='3'AND mcat ='6'ORDERBY datum DESC
Wat moet ik daarvoor in mijn code/query aanpassen? Iemand een idee?
hmmz, even denken he. Wanneer je bijvoorbeeld een jcat hebt, en dit is de link:
zoek.php?scat=17&hcat=11,12&jcat=15,16
Wat moet het dan worden? Meerdere OR's?
Dan wil ik de resultaten zien van zowel hcat = 11 in combinatie met scat = 17 als de resultaten van hcat=12 in combinatie met (i.c.m.) scat = 17.
En inderdaad als er een derde variabele bijkomt bijvoorbeeld:
zoek.php?scat=17&hcat=11,12&mcat=23,24
Dan wil ik de resultaten zien van hcat = 11 i.c.m. scat = 17 i.c.m. mcat=23 (dus WHERE hcat=11 AND scat=17 AND mcat=23) en de resultaten van hcat = 12 i.c.m. scat = 17 i.c.m. mcat=23 en de resultaten van hcat = 11 i.c.m. scat = 17 i.c.m. mcat=24 en de resultaten van hcat = 12 i.c.m. scat = 17 i.c.m. mcat=24
Snap je?
EDIT:
Dit heb ik als code op een andere pagina wat werkt met $_POST en met checkboxen als invoer, dat werkt wel. Hopelijk kan je er wat mee om me te helpen met het bovenstaande probleem.
EDIT2: Zo ziet de query op die pagina er dan uit: SELECT id, titel, prijs FROM advertenties WHERE ( ( hcat IN ( 12, 11 ) ) AND ( scat IN ( 17 ) ) ) ORDER BY datum DESC
Stel ik klik op Audi (hcat=11) wordt netjes hcat=11 toegevoegd en als ik er nog een keer op klik dan blijft hij staan. Alleen zou hij dan weg moeten uit de url.
En als ik eerst hcat=11 klik en daarna 12 dan staat er dus inmiddels hcat=12,11 en DAARNA nog een keer 12 klik staat er: hcat=12,12,11
Dus denk dat we nog iets kleins vergeten...
EDIT: >> Moet hij ook nog als je hcat=11,12 hebt, ook weer hcat=11 eruit filteren? zoja, dan moet de code nog een beetje anders.
Je was me voor...ik wacht even af
EDIT 2:
Medieval, nou gaat het helemaal niet echt lekker ;). Als ik op Audi klik dan gaat hij naar: zoek.php?hcat=11&&
Als ik DAARNA op BMW klik dan gaat hij naar zoek.php?hcat=12&& terwijl zoek.php?hcat=11,12 zou moeten zijn
EDIT3:
Als ik Audi aan klik (of een andere):
Warning: in_array() [function.in-array]: Wrong datatype for second argument in /home/asd/domains/sad.nl/public_html/sad/design/include/left.php on line 82
en als ik ondanks te foutmelding toch op BMW klik krijg je:
hcat=1211,12
Nog niet helemaal lekker
EDIT4:
Foutmelding wel, maar: als ik audi aanklik: zoek.php?hcat=11 en als ik daarna bmw aanklik --> hcat=1211,12
:(
EDIT5 (08.55 uur) :
Hee Medieval,
Hij doet nu beter . Als ik alleen Audi aanklik krijg ik netjes hcat=11 en als ik daarna BMW aanklik netjes hcat=11,12 en als ik dan nog een keer BMW aanklik komt er niet nog een keer 12 achter te staan.
Dat is goed, maar nu nog 1 klein stapje verder. Als er dus hcat=11,12 staat en als er dan NOG een keer op BMW (12 dus) wordt geklikt, dan moet die uit de hcat=11,12 weg worden gehaald dus dat er hcat=11 overblijft. Snap je??
Ander voorbeeld er staat bijvoorbeeld hcat=13 (mercedes) en ik klik nog een keer op Merceds dat dan gewoon compleet hcat wordt weggehaald. Snap je?
Dus inprincipe, bij de eerste klik "activeer" je een id en bij de tweede klik "de-activeer" je het weer .
Maar we zijn op de goede weg. Misschien dat je hier nog een oplossing voor weet. Bedankt in ieder geval.
EDIT 6:
Nog even een toevoeging op EDIT 5.
Ik heb voor scat en mcat ook het menu toegevoegd, daarbij heb ik gewoon het id op 1 en op 2 gezet in jouw code. Dat gaat opzich goed.
Echter (af en toe) doet hij iets raars. Stel ik klik eerst op hcat=11 en daarna op een scat of mcat , dan krijg je: zoek.php?&hcat=11scat=16
Niet helemaal goed. Als er dat staat en je kiest nogmaals een scat (of mcat), krijg je: zoek.php?&hcat=11scat=16scat=19
Niet helemaal goed he ;)...
Staat er bijvoorbeeld al: zoek.php?&hcat=11scat=16
en je klikt dan nog op een hcat, dan krijg je: zoek.php?hcat=11scat=16,13 (hier voegt hij zelfs een hcat, 13, achter een scat.) helemaal niet goed dus
Het rare is dat je als je bijvoorbeeld ALS EERSTE een mcat selecteert: zoek.php?mcat=22 en dan een scat of hcat , dan gaat het (nog) goed: zoek.php?scat=16&mcat=22 en dan OPNIEUW een andere mcat erbij, geeft: zoek.php?&scat=16mcat=22,23
Ik kan er best wat mee, maar, heel eerlijk, ik heb ook geen zin om (voor niks) voor jou scripts te schrijven. Ik ben je met dat punt al behoorlijk tegemoet gekomen. Wanneer je wilt dat iemand het voor je maakt, kan je dat aankaarten via Samenwerken.
Ik waardeer het zeer zeker wat je al voor me gedaan hebt en we zijn al grotendeels op de goede weg. Volgens mij is het een kwestie van wat kleine aanpassingen.
Hoop dat je me daar in tegemoet wilt komen.
Thanks!
EDIT: Hallo Medieval, hoop dat je er nog even naar wilt kijken!
Stel ik heb Audi aangeklikt en zit dan dus op zoek.php?hcat=1 en klik daarna de kleur ROOD aan dan gaat hij naar: zoek.php?hcat=1,12&scat=12
Terwijl hij ZOU MOETEN gaan naar: zoek.php?hcat=1&scat=12
Zoals je ziet voegt hij de 12 momenteel ook nog toe aan de hcat. Dat is dus niet goed. Snap je?