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

PHP & Base de données Discussion :

Regrouper valeurs dans un select


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 87
    Par défaut Regrouper valeurs dans un select
    Bonjour à tous,

    Alors voilà, j'utilise un select pour un moteur de recherche automobile.
    J'ai un champs "Boite de vitesses" que j'utilise dans un select pour le moteur de recherche.

    Soucis : les véhicules ont des boites de vitesses, BVA4, BVA5, BVA6, BVM5, BVM6, BVM7 etc ...
    Et j'aimerais en fait que dans mon select, au lieu d'avoir tous ces choix possibles, j'ai uniquement "Boite automatique" ou "Boite manuelle".

    Comment regrouper ces valeurs en PHP ? Comment faire une requête qui va dire que "si c'est BVA7, alors c'est boite automatique, si c'est BVM8, c'est boite manuelle" etc ...

    Actuellement, j'ai ça pour afficher le select :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <label for="vitesses">Boite de vitesse</label>
          <select name="boite" id="vitesses">
            <option value="">Toutes</option>
            <?php
             $boites=$vh->getPopulatedBoites();
             foreach($boites as $boite){
               echo "<option value=\"$boite\" ".(($boite == $vh->boite)?'selected="selected"':'').">$boite</option>";
             }
            ?>
          </select>
    Un gros merci d'avance

  2. #2
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Bonjour,

    si tu ne suis pas explicitement le type de boîte, tu peux très bien les séparer en recherchant le caractère "A" ou "M" dans leur identification.

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 87
    Par défaut
    Citation Envoyé par rawsrc Voir le message
    Bonjour,

    si tu ne suis pas explicitement le type de boîte, tu peux très bien les séparer en recherchant le caractère "A" ou "M" dans leur identification.
    C'est à dire ?

  4. #4
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Au final tu cherches à obtenir quoi ?
    D'une seule liste tu souhaites passer à 2 : Type de boite + Modèle
    Ou tu conserves une seule liste en formatant le contenu ainsi : (Manuelle|Automatique) - Modèle.
    Ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Automatique - BVA4
    Automatique - BVA5
    Manuelle - BVM4
    Manuelle - BVM5
    ...
    Parce que c'est pas très clair.

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 87
    Par défaut
    Citation Envoyé par rawsrc Voir le message
    Au final tu cherches à obtenir quoi ?
    D'une seule liste tu souhaites passer à 2 : Type de boite + Modèle
    Ou tu conserves une seule liste en formatant le contenu ainsi : (Manuelle|Automatique) - Modèle.
    Ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Automatique - BVA4
    Automatique - BVA5
    Manuelle - BVM4
    Manuelle - BVM5
    ...
    Parce que c'est pas très clair.
    Oui, désolé si ce n'est pas très clair
    En fait, c'est la 2ème solution : Conserver une seule liste en formatant (Manuelle / Automatique)

  6. #6
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Si tu es absolument sûr de n'avoir que deux possibilités, tu peux faire ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $boites = $vh->getPopulatedBoites();
    foreach($boites as $boite) {
       $type = (stripos($boite, 'A')) ? 'Automatique' : 'Manuelle';
       $selected = ($boite == $vh->boite) ? ' selected="selected"' : '';
       echo "<option value=\"$boite\"$selected>$type - $boite</option>";
    }

Discussions similaires

  1. [Dojo] Récupérer une valeur dans un Select
    Par MaT$oN dans le forum Bibliothèques & Frameworks
    Réponses: 15
    Dernier message: 06/02/2009, 15h26
  2. selection d'une valeur dans <html:select>
    Par singleProject dans le forum Struts 1
    Réponses: 2
    Dernier message: 08/07/2008, 17h24
  3. [Interbase] Récupérer une valeur dans un select
    Par ftoutin dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 09/01/2007, 13h36
  4. Utiliser une liste de valeur dans un select
    Par in dans le forum Oracle
    Réponses: 13
    Dernier message: 09/01/2007, 11h33
  5. récupérer une valeur dans un selected
    Par lacfab dans le forum Langage
    Réponses: 6
    Dernier message: 14/12/2005, 09h48

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