Soucis sur une requête sql
Bonjour,
J'essaye de récupérer des éléments en BD en fonction de critères sélectionnés que je récupère par $_GET .
Dans ma requête actuel, je ne parviens pas à afficher les bonnes données liées à $_GET['carb'] et $_GET['vit'] .
Exemple :
Code:
1 2 3 4 5
| <select name="vitesse_voiture">
<option value="0">Tous</option>
<option value="1">Manuelle</option>
<option value="2">Automatique</option>
</select> |
Je fais passer les sélections dans l'url de la page de destination soit :
Code:
/mapage.php?carb=0&vit=1
Pour la requête, je veux faire en sorte que :
si $_GET['vit']==0 -> la recherche s'effectue sur tout, c'est à dire que la requête doit sélectionner tout ce qui concerne ce champ et différent de 0 ..idem pour l'autre.
En gros, si variable=0 -> recherche globale . Si variable=1 -> recherche sur 1 uniquement. etc...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
if($_GET['carb']!=0){
$tcarburant = ' AND carburant_voiture = \'".mysql_real_escape_string($_GET[\'carb\'])."\' ';
}
if($_GET['vit']!=0){
$tvitesse = ' AND vitesse_voiture = \'".mysql_real_escape_string($_GET[\'vit\'])."\' ';
}
$query = mysql_query("SELECT * FROM matable
WHERE code_postal LIKE '".$_GET['cp']."%'
AND titre_annonce LIKE '%".$_GET['key']."%'
AND id_sous_categorie ='".mysql_real_escape_string($id_de_la_sous_categorie)."'
AND region='".mysql_real_escape_string($id_de_la_region)."'
".$tcarburant."
".$tvitesse."
AND valide='1'
ORDER BY timestamp ASC"); |
Je me triture les neurones dans tout les sens et je ne vois pas ce qui cloche dans mon code...
Merci de votre aide (si vous avez comprit mes explications).