|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : juillet 2006 Messages : 19 ![]() |
Bonjour,
J'ai un site avec un catalogue de référence. Je souhaiterai que l'input recherche me donne une liste de références correspondant à ce qui est saisi dans l'input. euh... Je sais pas si je suis clair... En gros, je commence à écrire dans le champs rechercher : "Z14" et J'obtient une liste (qui apparait automatiquement accroché au champs input) qui me propose "Z140" "Z141" "Z142" "Z143" Du même genre que le champs de recherche google... Quelqu'un a une solution ? |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Baptiste ROUSSELÉtudiant Inscription : janvier 2011 Messages : 802 ![]() |
Ce n'est pas une solution envisageable en PHP car c'est une langage serveur.
Il faut te tourner vers du Javascript dont les données de référence seront alimentées par un script PHP. Voilà un tutorial : http://dcabasson.developpez.com/arti...ion-pas-a-pas/ Ou sinon via jQuery UI : http://docs.jquery.com/UI/Autocomplete |
|
|
10
|
|
|
#3 |
|
Membre Expert
![]() ![]() Tiger Scott Développeur Web Inscription : juin 2006 Messages : 1 245 ![]() |
merci pour le tuto (moi qui voulait justement me faire une auto-completion)
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins. N'oubliez pas le Le tag resolu. Need_! |
|
|
00
|
|
|
#4 | ||
|
Invité de passage
![]() Inscription : juillet 2006 Messages : 19 ![]() |
Bon, j'avance, petit à petit...
Voilà là ou j'en suis : Code :
Mon problème, pour le moment, c'est que ça mouline mais n'aboutit jamais... Quelqu'un vois quelque chose qui n'irait pas dans ce code? |
||
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Baptiste ROUSSELÉtudiant Inscription : janvier 2011 Messages : 802 ![]() |
Tu incrémentes $i et non la bonne variable.
Cependant pour ce que tu fais pourquoi ne pas utiliser une fonction mysql_ faisant avancer automatiquement le pointeur ? mysql_fetch_array() mysql_fetch_object() mysql_fetch_assoc() |
|
|
00
|
|
|
#6 | ||
|
Membre chevronné
![]() Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 836 ![]() |
Comme ceci, ça fonctionne ?
Code :
__________________
Dire Straits, Bob Dylan, Led Zeppelin, the Who, Pink Floyd, AC/DC, Guns & Roses, the Doors, ... |
||
|
|
00
|
|
|
#7 | ||
|
Invité de passage
![]() Inscription : juillet 2006 Messages : 19 ![]() |
Bon, j'ai réussi un premier essai avec un truc appelé wick.js
Mais cela ne me convient pas vraiment, parce que l'auto-complétion ne se fait que sur les premiers caractères et non pas au milieu des mots, par exemple... De plus, il m'affiche la liste collé au bord droit de la fenêtre et je ne trouve pas comment remettre la liste en dessous de l'input... Je suis revenu donc à la première solution qui fonctionne maintenant ^^ Par contre, faut que je check, les résultats s'affichent sur la page et non pas dans une liste... [EDIT] J'avais juste oublié le css : <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/> Bref, merci à tous ^^ ![]() Je remet mon code si ca peut aider certains ^^ Code :
|
||
|
|
00
|
|
|
#8 |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
a quoi sert le $iref ? ainsi que le $nbref
tu peux direct faire un while sur mysql_result
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() ![]() Tiger Scott Développeur Web Inscription : juin 2006 Messages : 1 245 ![]() |
c'est le principe de l'auto-completion j'ai envie de dire...
__________________
La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins. N'oubliez pas le Le tag resolu. Need_! |
|
|
00
|
|
|
#10 |
|
Membre éprouvé
![]() Guillaume Développeur Web Inscription : décembre 2007 Messages : 353 ![]() |
dans la requete il faut que tu mettes
Code sql :
WHERE reference LIKE 'letextdetoninput%' edit: j'ai indiqué le contraire, suis à l'ouest. Dur le réveil...
__________________
Si ce que tu as à dire n'est pas plus beau que le silence, alors tais toi. - Pensez à voter pour les messages qui vous ont été utiles ainsi que de mettre
|
|
00
|
|
|
#11 |
|
Membre chevronné
![]() Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 836 ![]() |
Bonjour,
je ne pense que tu ne pourras pas afficher les résultats sur la page (comme Google ?), le script jQuery est conçu comme ça. De plus cette méthode n'est pas viable, quand ta base de données sera très grande, tous les résultats seront chargés sur la page (et pour peu que ton inout soit dans le layout principal, à chaque rechargement de page..) Peut-être devrais-tu te tourner vers un script AJAX plus complet
__________________
Dire Straits, Bob Dylan, Led Zeppelin, the Who, Pink Floyd, AC/DC, Guns & Roses, the Doors, ... |
|
|
00
|
|
|
#12 | ||
|
Invité de passage
![]() Inscription : juillet 2006 Messages : 19 ![]() |
Bon, voilà, j'ai réussi à tout régler comme il faut, sauf le nombre de proposition affichées...
Là, ça m'affiche tous les résultats qui contiennent ce que j'ai déjà écrit... Ce qui fait que lorsque je tape "1", j'ai environ 10000 résultats qui s'affichent... J'aimerai pouvoir limiter l'affichage à quelques lignes (10-15) J'ai essayé de limiter ça dans la requête <-- mauvaise idée Quelqu'un connaitrait-il assez la librairie pour pouvoir m'aiguiller sur l'option à utiliser? du genre : Code :
$("input#autocomplete").setMaximumRowCount(12); [EDIT] J'ai résolu mon problème en éditant le CSS du jquery-ui Code :
Merci pour toute l'aide apportée ^^ |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com