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

AJAX Discussion :

Ajax et PHP : select ne se remplis pas


Sujet :

AJAX

  1. #1
    Membre du Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Janvier 2018
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2018
    Messages : 299
    Points : 67
    Points
    67
    Par défaut Ajax et PHP : select ne se remplis pas
    Bonjour à tous,
    J'ai un select qui charge des villes (toutes les villes de france, donc très lourd).
    Il charge les 35 000 communes de France depuis une de mes tables, autant vous dire que quand je lance la page le chargement et la quantité téléchargée donne envie de se pendre si on a pas la fibre.
    J'utilise l'outil select 2, l'utilisateur commence à mettre le début du nom de sa ville et l'outil lui sort les villes qui contiennent le préfixe rentré, c'est très pratique et mon client veut à tout prix conserver cette fonctionnalité.
    Il faudrait peut-être qu'a chaque lettre rentrée, le système fasse sa requête à ce moment, limitant le nombre de ville chargé. Quelqu'un a-t-il un début de code là dessus pour select 2? Je suis débutant en JS et je ne saurai pas construire ça from scratch.
    Mon code actuel (qui donc, tourne bien mais est lourd):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <label for="Ville">Ville</label>
    <input list="ice-cream-flavors" id="ice-cream-choice" name="ice-cream-choice" class="form-control client_ville_insert" />
    <datalist id="ice-cream-flavors">
    <select type="text" class="form-control">
        <?php $list = $bdd->query('SELECT DISTINCT ville_nom FROM ville ORDER BY ville_nom ASC');
        while ($data = $list->fetch()) { ?>
            <option value="<?php echo $data['ville_nom']; ?>"> <?php echo $data['ville_nom']; ?></option>
        <?php } $list->closeCursor(); ?>
    </select>
    </datalist>
    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    perso, j'ai opté pour 2 champs :
    • CP : <input>
    • Ville : <select>


    • Tant que le CP est vide, Ville affiche "Trop de réponses... affinez"
    • Quand on commence à indiquer le CP, à partir du 1er, ou 2ème caractère tapé (au choix *) :
      -> Si il y a plus de 500 (ou 1000, ou ce que tu définis) villes (via une simple requête COUNT()), j'affiche encore "Trop de réponses... affinez"
      -> sinon, on charge les villes correspondantes dans le <select>.
    • Ensuite, j'ai aussi l'équivalent de "Select2" qui permet une autocompletion (j'utilise "Chosen")

    * au 2ème caractère, on est au niveau du département (sauf Dom-Tom, qui ont 3 caractères)

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/04/2011, 12h14
  2. Réponses: 3
    Dernier message: 06/05/2009, 10h12
  3. [AJAX] page php qui ne s'execute pas
    Par jpclutier dans le forum AJAX
    Réponses: 5
    Dernier message: 20/03/2009, 16h30
  4. [AJAX] Retour PHP pas pris en compte
    Par llaffont dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 09/06/2008, 06h51

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