Ajax - HTML/CSS - Programmation
Marsh Posté le 05-09-2008 à 09:53:59
1) Quand l'appel 'ajax' arrive et que tu vas chercher en base la liste des noms commençant par ce qui a été tapé, garde en session cette liste (avec l'id)
2) quand le formulaire arrive, tu n'as plus qu'a chercher dans cette liste l'id correspondant au nom finalement saisi
2') si le nom ne s'y trouve pas, tu dois faire une requête à la base pour récupérer l'id
Marsh Posté le 05-09-2008 à 11:00:52
ca ne sera pas long et lent ???
j'aurais a peu pres 100000 enregistrements, ca prendra enormement de temps pour comparer une chaine de caractere!!
Marsh Posté le 05-09-2008 à 12:03:34
Citation : lorsque je tape une lettre je propose une liste d'auteur |
C'est cette liste qu'il faut garder en session. si elle fait 100000 enregistrements t'as un gros problème de conception.
Montre nous le code appelé lors de l'appel 'ajax'
Marsh Posté le 05-09-2008 à 12:49:30
un probleme de conception?? mais pourquoi? on peut tres bien avoir des milliers d'enregistrement
voici ma fonction javascript :
Code :
|
ds le fichier xhr_recherche.php il y a une simple requette SQL
Marsh Posté le 05-09-2008 à 14:06:06
Citation : mais pourquoi? on peut tres bien avoir des milliers d'enregistrement |
Donc quand tu commences à taper un nom l'ajax te propose une liste de 100000 auteurs pour 1 lettre tapée ???... t'en a combien en tout dans ta base, 3 millions ?
Citation : ds le fichier xhr_recherche.php il y a une simple requette SQL |
C'est justement ça que je voulais voir.
Marsh Posté le 05-09-2008 à 14:09:30
non non non g en tout 100000, mais les resultats seront limite a par exemple 20.
voici ma requete ds le fichier xhr_recherche.php:
Code :
|
Marsh Posté le 05-09-2008 à 14:13:34
Tu ajoutes à ton formulaire un champ caché contenant l'id de l'auteur (tu récupères nom+id via ta fonction xhr)?
Marsh Posté le 05-09-2008 à 15:46:02
une autre petite question, est ce mieux de recuperer les resultats sous forme de texte ou plutot en xml??
Marsh Posté le 05-09-2008 à 16:06:09
Citation : Tu ajoutes à ton formulaire un champ caché contenant l'id de l'auteur (tu récupères nom+id via ta fonction xhr)? |
C'est pas top ça.
Ton navigateur va faire un appel au serveur (qui va faire une requête SQL) pour récupérer une info dont le seul but est d'être transmise au serveur...
Autant attendre la soumission du formulaire pour faire ça.
Marsh Posté le 05-09-2008 à 16:08:18
Bidem a écrit :
C'est pas top ça. Autant attendre la soumission du formulaire pour faire ça. |
c'est négligeable. Tu ne fais pas une requête supplémentaire, t'en fais déjà une pour le nom, il suffit de transmettre l'ID en plus. Ce qui t'évite de refaire une requête pour retrouver l'id à partir du nom à la validation, à compter qu'il soit unique.
Marsh Posté le 04-09-2008 à 15:34:41
Bonjour,
une petite question qui vous paraitra peut etre banale
j'ai un formulaire de saisie avec une dizaine de champs. parmis ces champs j'ai par exemple 'auteur'.
lorsque je tape une lettre je propose une liste d'auteur, et si on trouve notre auteur on clique dessus. jusqu'ici il y a pas de probleme!
mais comment faire pour inserer uniquement l'identifiant de l'auteur ds ma base de donnees sachant que seulement le nom de l'auteur est visible???
Merci de votre aide
Reda