Regrouper valeurs dans un select

Eléphanteau du PHP | 24 Messages

12 janv. 2012, 15:06

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 : Tout sélectionner

<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 :D

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

12 janv. 2012, 22:02

Peut-on voir la structure de la table "Voitures" ?

Pour moi ce serait cote base de donnees que ce la se ferait, je ne sais pas combien il y a de boites de vitesses differentes mais s'il y en a un nombre raisonnable, on pourrait avoir une table "Boites de vitesses" et une table "Type boites de vitesses"

vehicules(id_vehicule, fk_boite_de_vitesses);
boites_vitesses(id_boite_vitesse,libelle_boite_vitesses,fk_type_boite_vitesses) :arrow: 1, "BVA7", 2 - 2, BVM8, 1
type_boites_vitesses(id_type_boite_vitesses,libelle_type_boite_vitesses) :arrow: 1, Boite manuelle - 2, Boite automatique