Input met realtime search in database
Hallo,
Ik ben voor een invulveld/keuzelijst op zoek naar een mogelijkheid om automatisch en realtime gegevens op te halen uit de database.
Bijvoorbeeld een veld waar je een klant moet ingeven.
Wanneer je enkele letters van de naam invult de mogelijkheden uit de database worden opgehaald en de keuze mogelijkheden eronder komen.
Een beetje zoals de autofill maar dan met gegevens uit een eigen MySQL database.
Heeft hier iemand ervaring mee?
Voorbeeld:

Ik ben voor een invulveld/keuzelijst op zoek naar een mogelijkheid om automatisch en realtime gegevens op te halen uit de database.
Bijvoorbeeld een veld waar je een klant moet ingeven.
Wanneer je enkele letters van de naam invult de mogelijkheden uit de database worden opgehaald en de keuze mogelijkheden eronder komen.
Een beetje zoals de autofill maar dan met gegevens uit een eigen MySQL database.
Heeft hier iemand ervaring mee?
Voorbeeld:

Gewijzigd op 27/02/2015 21:24:02 door Steven dirickx
Dat heet een Autocomplete, en zou je heel simpel met jQueryUI kunnen maken:
http://jqueryui.com/autocomplete/
http://jqueryui.com/autocomplete/
Bedankt Aar,
Maar ik vermoed dat wanneer er bijvoorbeeld 10.000 klanten in de database staan, het op deze manier wel erg traag zal worden? Weet je of hiervoor ook deze methode wordt gebruikt of een andere?
Maar ik vermoed dat wanneer er bijvoorbeeld 10.000 klanten in de database staan, het op deze manier wel erg traag zal worden? Weet je of hiervoor ook deze methode wordt gebruikt of een andere?
10.000 klanten is voor een database een peuleschil, en verder valt de autocomplete wel bij te stellen met een minimaal aantal letters. Ik zie zelf geen enkel probleem verder.
Wat Aar zegt - je kunt je autocomplete altijd een "slimmer" maken:
- je zou een timeout kunnen zetten op het opnieuw zoeken als iemand aan het typen is, er wordt dan gewacht met het direct (op de achtergrond) uitvoeren van een query zodat je je database niet bij elke toetsaanslag aan het spammen bent
- je zoekterm zou uit een minimaal aantal karakters moeten bestaan (zoals Aar al aangaf)
- je zou indexen kunnen aanbrengen op de tabel-kolommen waar je op zoekt voor snelle(re) lookup
Aan de jQuery-kant is er vast al een hele hoop slimmigheid ingebouwd als je van je jQuery-autocomplete gebruik maakt.
- je zou een timeout kunnen zetten op het opnieuw zoeken als iemand aan het typen is, er wordt dan gewacht met het direct (op de achtergrond) uitvoeren van een query zodat je je database niet bij elke toetsaanslag aan het spammen bent
- je zoekterm zou uit een minimaal aantal karakters moeten bestaan (zoals Aar al aangaf)
- je zou indexen kunnen aanbrengen op de tabel-kolommen waar je op zoekt voor snelle(re) lookup
Aan de jQuery-kant is er vast al een hele hoop slimmigheid ingebouwd als je van je jQuery-autocomplete gebruik maakt.