IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Plusieurs autocomplétions interdépendantes


Sujet :

jQuery

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 129
    Points : 57
    Points
    57
    Par défaut Plusieurs autocomplétions interdépendantes
    Bonjour,

    Voici ma problématique:

    - L'internaute sélectionne son pays dans la liste.
    - La liste des départements est chargée en fonction du pays choisi (Il faut charger cette liste à partir d'une requête SQL ou à partir d'un fichier)

    Donc pour le premier choix, aucun problème, on charge tous les pays et le premier choix se fait sans encombre.


    Ensuite, mon problème est que je ne veux charger que les départements concernés car la liste totale pèse très lourd. A mon sens il existe deux solutions:

    > Une requête SQL qui va sélectionner les bons départements. Mais j'ignore comment la déclencher sans recharger la page.

    > Une multitude de fichiers Pays_departement, et on charge le fichier concerné. J'ignore comment doit être structuré le dit fichier cependant.


    Pourriez-vous m'éclairer sur la solution optimale ?

    Cordialement,

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2015
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2015
    Messages : 98
    Points : 184
    Points
    184
    Par défaut
    Bonjour,
    Tu peux charger la liste des départements en fonction du pays sélectionné dans la première liste en Ajax.
    Sur le onchange de la liste pays tu envois une requête http à une page php dédié à renvoyer les départements correspondant au pays envoyé en paramètre de la requête.
    Tu peux faire ca avec Javascript ou jQuery. Il y a pas mal de tutos sur le sujet.
    Il faudra sans doute que tu gères un "sablier".

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 129
    Points : 57
    Points
    57
    Par défaut
    >Le problème c'est que je gère php, sql, html, css mais très peu le JVS et encore moins l'Ajax. J'ai déjà lu certains tutos mais hélas, je ne vois rien qui correspondent à mon idée car les données sont souvent en dur dans les script et non issues d'une BDD.

    >Que voulez-vous dire par gérer un sablier ?

  4. #4
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2015
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2015
    Messages : 98
    Points : 184
    Points
    184
    Par défaut
    Une requete ajax est une requête lancée en javascript vers une page (exemple php) qui lui renvoi la réponse. Il n'y a pas rechargement de la page. La réponse est alors interprétée par Javascript pour réaliser une action (exemple afficher un message sur la page).
    Il se passe un temps (même si c'est très court) entre la réquête et la réponse. On dit que c'est une requête asynchrone.
    Comme c'est asynchrone, si ta page php est longue a délivrer la réponse il faut un moyen pour que l'utilisateur sache que la réquête est en cours (un sablier ou un message). Il faut aussi gérer le cas ou la requête n'aboutisse pas (bug, server down...).
    J'utilise pas JQuery mais jette un œil à cette discussion tu verras le principe.
    http://www.developpez.net/forums/d15...etournee-ajax/

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 129
    Points : 57
    Points
    57
    Par défaut
    Merci beaucoup pour tes lumières.

    J'ai une dernière question qui découle de tes réponses:

    > Est il plus optimisé de rechercher un résultat dans une seule table avec X entrées, X>50 000 ou bien de découper cette table en environ 200 tables et rechercher le résultat dans une des 200 tables de taille X/200 ?

    (Ce serait le contenu de ma page PHP appelée via AJAX)

  6. #6
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2015
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2015
    Messages : 98
    Points : 184
    Points
    184
    Par défaut
    Un index permet de créer des sous tables virtuelles.
    Donc à mon sens le mieux est 1 seule table mais bien indexée.
    50 000 entrées c'est pas grand choses pour MySQL par exemple.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 129
    Points : 57
    Points
    57
    Par défaut
    Merci beaucoup pour ta réponse !!

    Si j'indexe toutes les données, c'est mieux ?

    Il n'y aura que rarement des modifications car la liste des pays/régions change rarement.


    Mes sources qui me disent que l'indexation c'est optimum sauf modification, cours SQL : http://sql.developpez.com

  8. #8
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2015
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2015
    Messages : 98
    Points : 184
    Points
    184
    Par défaut
    Tu crées un fichier unique et tu l'indexes sur les champs du where de ta requête.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 20/09/2011, 09h31
  2. Autocomplétion sur plusieurs champs
    Par agaufres dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 30/09/2009, 14h43
  3. Autocomplétion avec plusieurs inputs
    Par Doldz dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 09/06/2009, 09h00
  4. [AJAX] plusieurs listes autocomplétées
    Par 6ril25 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 21/08/2008, 15h31
  5. [AJAX] Plusieurs autocomplétion sur la même page
    Par Death83 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 20/11/2007, 11h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo