Zone de saisie + Helppppppppppppp

Résolu
cs_emmanuel9 Messages postés 903 Date d'inscription mercredi 23 février 2005 Statut Membre Dernière intervention 16 juin 2010 - 8 sept. 2005 à 11:54
cs_emmanuel9 Messages postés 903 Date d'inscription mercredi 23 février 2005 Statut Membre Dernière intervention 16 juin 2010 - 8 sept. 2005 à 12:58
Bonjour à tous,





En faite mon problème est que j'ai un textbox sur une page web et je
voudrais que si par exemple l'utilisateur tape un 't' dans ce textbox,
ca interroge une base de données avec pleins de mots et ca lui ressort
tout les mots qui commences par un t. Ensuite si par exemple il tape
'to' ca lui ressort tout les mots qui commence par to comme toto. Un
peut comme dans cette page web en haut dans le textbox a gauche de
rechercher, quand on tape une lettre ca ressort tous les mots qui
commence par cette lettre





Si qq avait une solution...





par avance, merci.

6 réponses

ashboody Messages postés 91 Date d'inscription samedi 30 mars 2002 Statut Membre Dernière intervention 11 octobre 2005
8 sept. 2005 à 12:03
je vais juste te donner une technique, pas de code ici, a toi de te débrouiller :)
tu peux utiliser une iframe cachée (height:0 width:0) comme target pour submitter le formulaire qui contient ton textbox en question.
Tu submit le formulaire à l'aide d'un javascript lorsque 2 caractères minimum sont saisis par exemple afin de limiter la remontée d'enregistrements, enfin tout dépend du volume de ta base.
Le script action de ce formulaire devra contenir l'accès à la BD et l'affichage des résultats possible dans un calque
que tu placera en dessous de ta zone de texte. D'ou l'avantage de l'utilisation de l'iframe qui te permet d'agir sur ta fenetre parent sans la rafraichir.
Chaque résultat aura un lien du genre javascript:send("monresultat");
voila j'espere que mes explications sont claires.

bonne continuation
3
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
8 sept. 2005 à 12:15
Hello,



c'est le système ajax.

Pour faire ça avec du php,tu peux utiliser les requêtes xmlhttp. Explication rapide :

Ta zone de texte réagit à un évènement onkeyup



Cet évènement déclenche un appel à l'objet xmlhttp qui va appeler un
module php en lui passant en paramètre le $_POST de ta zone de
saisie de texte.

Ce module php va chercher dans ta base de données les données qu'il
faut (tous lesmots commençant par la valeur de $_POST, puis les renvoie
à l'objet xmlhttp.

L'objet xmlhttp, enfin, affiche ce que le module php lui a renvoyé.



Pas de idrame, pas de raffraichissement non plus, et un traitement
rapide. Attention, ces requêtes peuvent finir par être assez lourdes
pour ta base (même relarque que ashboody).
3
ashboody Messages postés 91 Date d'inscription samedi 30 mars 2002 Statut Membre Dernière intervention 11 octobre 2005
8 sept. 2005 à 12:04
et encore désolé pour les retours chariots UNIX, mais j'insiste ce site ne les prends pas en compote
0
ashboody Messages postés 91 Date d'inscription samedi 30 mars 2002 Statut Membre Dernière intervention 11 octobre 2005
8 sept. 2005 à 12:04
euh nan pas en compote ... mais en compte
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_emmanuel9 Messages postés 903 Date d'inscription mercredi 23 février 2005 Statut Membre Dernière intervention 16 juin 2010 2
8 sept. 2005 à 12:12
Merci de ta réponse, j'ai bien pris en compote ce que tu as ecris, en
faite, je suis debutant en php, j'ai interpreté la moitié de ce que tu
as dis comme du chinois mais je vais m'y mettre pour essayer de
comprendre. Est ce que si il tape "t" ca soumet le formulaire
pour regarder dans la base ou bien est ce que ca peut le faire sans
soumettre le forumlaire, en direct en faite. Parceque si il tape toto
et que ca rafraichit la page chaque fois qu'il tape une lettre faudra
pas être epileptique.
0
cs_emmanuel9 Messages postés 903 Date d'inscription mercredi 23 février 2005 Statut Membre Dernière intervention 16 juin 2010 2
8 sept. 2005 à 12:58
merci de vos réponse
0
Rejoignez-nous