Form onchange met meerdere variabelen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Bart de kinkelaar

bart de kinkelaar

21/12/2016 17:10:49
Quote Anchor link
Ik heb een menu met 2 dropdown form vakjes.
Als ik bij Merk SAMSUNG aantik, zorgt de onchange van de select-dropdown dat de informatie die hij ernaast ophaalt uit de database, bijgewerkt word naar alleen dingen van Samsung. De link is dan localhost/blabla/site.php?merk=Samsung.
Maar als ik dan bij Prijs ONDER 500 aantik, doet hij hetzelfde (onchange zorgt voor weergeven alles onder 500 euro uit db). de link is dan hetzelfde alleen ipv dat hij ervan maakt 'site.php?merk=Samsung&&Prijs=500 (500 is value van ONDER 500), maakt hij er site.php?prijs=500 van.

Ik heb al vaker gewerkt met variabelen op verschillende wijzes doorzenden, maar hier gaat het om het continu kunnen bijwerken van de informatie die onchange uit de database worden gehaald waarbij de pagina zelf niet veranderd maar gewoon hetzelfde blijft (de link).

Kan iemand vertellen of uitleggen hoe ik site.php?merk=Samsung&&prijs=500 oid krijg ipv merk en prijs apart steeds?
 
PHP hulp

PHP hulp

05/11/2024 15:41:26
 
Frank Nietbelangrijk

Frank Nietbelangrijk

21/12/2016 22:21:08
Quote Anchor link
Lijkt me niet zo heel moeilijk. Ik zou voor een AJAX oplossing gaan zodat de pagina NIET ververst wordt.

Je moet dan beginnen met een php bestand die de benodigde filters toepast. Dus deze pagina moet kunnen werken met:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
filter.php
filter.php?merk=Samsung
filter.php?prijs=500
filter.php?merk=Samsung&prijs=500

Vervolgens kun je deze pagina laten antwoorden met HTML waarmee je de content van een bepaalde div op je pagina ververst. Of wanneer je genoeg zelfvertrouwen hebt met JSON.
Het antwoord moet natuurlijk een opsomming bevatten van de al dan niet gefilterde producten.

Daarna kun je een AJAX request naar deze pagina inbouwen in je webshop. Dit request moet natuurlijk bij verandering van de dropdowns opnieuw verstuurd worden maar wel met de juiste query-string.

Dit kan heel makkelijk met behulp van jQuery als je een formulier maakt met de twee dropdowns er in. Een voorbeeld hiervan vindt je onder andere hier
 
Thomas van den Heuvel

Thomas van den Heuvel

22/12/2016 15:24:33
Quote Anchor link
Quote:
Maar als ik dan bij Prijs ONDER 500 aantik, doet hij hetzelfde (onchange zorgt voor weergeven alles onder 500 euro uit db). de link is dan hetzelfde alleen ipv dat hij ervan maakt 'site.php?merk=Samsung&&Prijs=500 (500 is value van ONDER 500), maakt hij er site.php?prijs=500 van.

Het klinkt alsof de onchange van de selectbox geen rekening houdt met elders geselecteerde velden maar alleen kijkt naar zijn eigen value? Als je nu eens alle onchanges naar één stuk functionaliteit (functie?) laat wijzen die de filter-URL op een uniforme wijze opbouwt? Bijvoorbeeld op de manier / met behulp van wat @Frank hierboven voorstelt. De URL die je opstelt gooit dan alle zoekparameters over de schutting maar mogelijk hebben niet alle parameters een waarde (bijvoorbeeld ?merk=Samsung&prijs= of ?merk=&prijs=500).
 
- Roland -

- Roland -

23/12/2016 14:56:20
Quote Anchor link
zorgt de onchange ....

Doe je het wel via een submit & heb je ze wel samen/beide binnen het zelfde FORM staan ?
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.