Contrôle de champs de sélection
Bonjour, je suis en stage d'entreprise en BTS IG1 et je dois actuellement développer un site internet pour un garage, donc tout va bien, mais à je bloque dans ma page php de recherche dite 'avancée' des véhicules d'occasions dont dispose le garage. Cette recherche avancée propose à l'utilisateur de baser sa recherche sur les critères qu'il l'interesse. Etant donné toutes les possibilités, combinaisons (un critère, deux critères, trois critères, ...) je me suis limité à 3 critères (en faisant toutes les possibilités de recherche j'en suis à 14 000 lignes de code en php :x) voilà à quoi ressemble mon formulaire :
[IMG]http://img638.imageshack.us/img638/5240/projet.png Uploaded with ImageShack.us[/IMG]
Donc voici mon problème :
j'aimerai pouvoir contrôler ce que sélectionne l'utilisateur, lorsqu'il choisirait plus de trois critères alors lui envoyer un message (genre alert('Message d'alerte')) seulement j'ai beau essayer, chercher, me creuser la tête je trouve pas.
De plus j'ai trois types de champs différents, sélections, textes et checkbox ce qui ne rend pas la chose facile, je pensais 'compter' les champs différents de "-" (pour les sélections), différents de " "(pour les textes) et ceux checked pour les boites à cocher seulement... c'est pas facile lol si quelqu'un a une autre idée je suis preneur :D
Une partie du code (seulement la mise en page, je vous épargne les 14 000 lignes de requêtes SQL avc que des if :p) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177
|
<?php include("connexion.php");//Chaine de connexion à la BDD
$query_count='SELECT COUNT(*) FROM vehicule;';
$result_count=mysql_query($query_count);
$nb_vehicules=mysql_fetch_array($result_count); ?>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="style.css"/>
<SCRIPT LANGUAGE="JavaScript" SRC="controle.js"></SCRIPT>
</head>
<body>
<div id="conteneur_rech">
<div id="logo">
<img src="images/logo-Toyota-occasions.jpg" alt="Toyota Occasions" style="border-width:0px;" /></a>
</div>
<hr/>
<font size=2 face='Times'>
<P><B>Nous disposons actuellement de <? echo $nb_vehicules[0]; ?> véhicules d'occasions.</B><P>
<form method="post" name="formu">
<table width=1050px>
<tr><td>Energie</td><td>Budget</td><td>Garage</td><td>Kilométrage</td><td>Boîte</td><td>Carrosserie</td><th COLSPAN=2>Années*</th></tr>
<tr>
<td>
<select name='tri_energie'>
<option CHECKED>-</option>
<option value="ES">Essence</option>
<option value="GO">Diesel</option>
<option value="GP">GPL</option>
<option value="EL">Electrique</option>
<option value="HY">Hybride</option>
<option value="N/D">Inconnu</option>
<option value="">Non-spécifié</option>
</select>
</td>
<td>
<select name='tri_prix'>
<option CHECKED>-</option>
<option value="-5000">Moins de 5 000 TTC</option>
<option value=10000>5 000 à 10 000 TTC</option>
<option value=15000>10 000 à 15 000 TTC</option>
<option value=20000>15 000 à 20 000 TTC</option>
<option value=25000>20 000 à 25 000 TTC</option>
<option value=30000>25 000 à 30 000 TTC</option>
<option value="+">Plus de 30 000 TTC</option>
</select>
</td>
<td>
<select name='tri_lieu'>
<option CHECKED>-</option>
<option value="Sisteron">Sisteron</option>
<option value="Volx">Volx</option>
</select>
</td>
<td>
<select name='tri_km'>
<option CHECKED>-</option>
<option value="-50000">Moins de 50 000 Km</option>
<option value=50000>50 000 à 75 000 Km</option>
<option value=75000>75 000 à 100 000 Km</option>
<option value=100000>100 000 à 125 000 Km</option>
<option value=125000>125 000 à 150 000 Km</option>
<option value=150000>150 000 à 175 000 Km</option>
<option value=175000>175 000 à 200 000 Km</option>
<option value=200000>200 000 à 225 000 Km</option>
<option value="+225000">Plus de 225 000 Km</option>
</select>
</td>
<td>
<select name='tri_boite'>
<option CHECKED>-</option>
<option value="BVA">Automatique</option>
<option value="BVM">Manuelle</option>
<option value="BVAS">Auto séquent.</option>
<option value="BVMS">Manuelle séquent.</option>
<option value="BVR">Rob simple embray</option>
<option value="BVRD">Rob double embray</option>
<option value="CVT">A var continu</option>
<option value="E">Euro Tronic</option>
<option value="I">I Shift</option>
<option value="N/D">Inconnu</option>
<option value=''>Non-spécifié</option>
</select>
</td>
<td>
<select name='tri_carrosserie'>
<option checked>-</option>
<option value="TT">4x4</option>
<option value="BRAS">A bras</option>
<option value="AMBU">Ambulance</option>
<option value="AMPLI">Ampliroll</option>
<option value="ECOLE">Auto-école</option>
<option value="AUTRE">Autres</option>
<option value="AREM">Autre remorque</option>
<option value="ASREM">Autre semi</option>
<option value="AMPLI">Ampliroll</option>
<option value="ECOLE">Auto-école</option>
<option value="AUTRE">Autres</option>
<option value="AREM">Autre remorque</option>
<option value="ASREM">Autre semi</option>
<option value="ACAM">Autres camions</option>
<option value="BENNE">Benne</option>
<option value="BL">Berline</option>
<option value="BETA">Bétaillère</option>
<option value="BK">Break</option>
<option value="BKCIT">Break Citadin</option>
<option value="BKCMP">Break Compact</option>
<option value="CAB">Cabriolet</option>
<option value="CAMP">Camping-car</option>
<option value="CHASS">Châssis</option>
<option value="CIT">Citerne</option>
<option value="COLL">Collection</option>
<option value="COMP">Compacte</option>
<option value="EXCEP">Convoi exceptionnel</option>
<option value="CP">Coupé</option>
<option value="CC">Coupé cabriolet</option>
<option value="DEPAN">Dépannage</option>
<option value="ECH">Echelle</option>
<option value="FDMOV">Fond mouvant</option>
<option value="FG">Fourgon</option>
<option value="FRIGO">Frigo</option>
<option value="GRUE">Grue automotrice</option>
<option value="GRUM">Grumier</option>
<option value="ISO">Isotherme</option>
<option value="LS">Ludospace</option>
<option value="MAG">Magasin</option>
<option value="MIL">Militaire</option>
<option value="MB">Minibus</option>
<option value="MS">Monospace</option>
<option value="MSCIT">Monospace citadin</option>
<option value="MSCMP">Monospace compact</option>
<option value="NAC">Nacelle</option>
<option value="CITA">Petite voiture/Citadine</option>
<option value="PIEC">Pièces</option>
<option value="PLAT">Plateau</option>
<option value="FGBA">Plateau bâché/Fourgon bâché</option>
<option value="POMP">Pompiers</option>
<option value="PORTE">Porte</option>
<option value="PCONT">Porte containers</option>
<option value="PENG">Porte engins</option>
<option value="PVOI">Porte voitures</option>
<option value="DANG">Produits dangereux</option>
<option value="PLSC">Rideaux coulissants (plsc)</option>
<option value="SUV">S.U.V</option>
<option value="SAV">Savoyarde</option>
<option value="STD">Standart</option>
<option value="SBAIS">Surbaissé</option>
<option value="TP">Tp</option>
<option value="CHEV">Van à chevaux</option>
<option value="FUNE">Véhicule funéraire</option>
<option value="VOIR">Voirie</option>
<option value=''>Non-spécifié</option>
<option value="N/D">Inconnu</option>
</select>
</td>
<td>
<input type='text' name='annee1' size=2 onkeypress="chiffres(event)"> à <input type='text' name='annee2' size=2 onkeypress="chiffres(event)" > <!-- chiffres(event) est un script js qui empêche de taper autre chose qu'un chiffre -->
</td>
</tr>
</table>
(*) Recherche d'un ou de plusieurs véhicules dont la première mise en circulation est comprise entre 1990 et 2000 par exemple.
<hr/>
Option(s) :<br>
<table>
<tr>
<td><input type='checkbox' value='Climatisation' name='Climatisation'> Climatisation</td>
<td><input type='checkbox' value='GPS' name='GPS'> GPS</td>
<td><input type='checkbox' value='Radio CD' name='Radio_CD'> Lecteur CD</td>
</tr>
</table>
<p><p><input type='submit' value='Envoyer' name='recherche'> <input type="button" value="Retour au site" OnClick="window.location.href='../index.php'">
</form>
</font>
</div>
</body>
</html> |
Le JavaScript n'est pas ma spécialité donc je rame un peu
Un sauveur plz :D à bientôt merci.