Requetes imbriquées

Messages postés
5
Date d'inscription
vendredi 17 juin 2011
Statut
Membre
Dernière intervention
29 novembre 2011
- - Dernière réponse : kwikevin
Messages postés
5
Date d'inscription
vendredi 17 juin 2011
Statut
Membre
Dernière intervention
29 novembre 2011
- 15 nov. 2011 à 09:45
Bonjour j'aimerais poser une question à propos des requetes imbriquées contenant WHERE clause .

En effet,je veux selectionner dans ma base de données et avoir des résultats correpondant aux critères de recherche.Je veux que ma requete fonctionne ou selectionne meme si il y' au moins une valeur correspondant au critère de recherche.

voici les variables et la requete qui fonctionne si tous les critères sont pris au compte en php:




$body1=mysql_real_escape_string(htmlspecialchars($_GET['body']));

$fuel1=mysql_real_escape_string(htmlspecialchars($_GET['fuel']));
$transmission1=mysql_real_escape_string(htmlspecialchars($_GET['transmission']));

$age1=mysql_real_escape_string(htmlspecialchars($_GET['age']));
$mileage1=mysql_real_escape_string(htmlspecialchars($_GET['mile_age']));


$req =" SELECT * FROM clients,vehicles WHERE clients.id_client=vehicles.id_client and vehicles.fuel='$fuel1' and vehicles.transmission='$transmission1' and vehicles.body='$body1 ' and vehicles.mile_age='$mileage1' and vehicles.age='$age1' ";


Je vous remercie
Afficher la suite 

3 réponses

Messages postés
50
Date d'inscription
dimanche 6 mai 2007
Statut
Membre
Dernière intervention
14 novembre 2011
0
Merci
ta essayé avec OR à la place de AND ?
Commenter la réponse de Zut13
Messages postés
13
Date d'inscription
mardi 30 septembre 2003
Statut
Membre
Dernière intervention
22 février 2012
0
Merci
$body1=mysql_real_escape_string(htmlspecialchars($_GET['body']));

$fuel1=mysql_real_escape_string(htmlspecialchars($_GET['fuel']));
$transmission1=mysql_real_escape_string(htmlspecialchars($_GET['transmission']));

$age1=mysql_real_escape_string(htmlspecialchars($_GET['age']));
$mileage1=mysql_real_escape_string(htmlspecialchars($_GET['mile_age']));

$sql1 = ""
if ($fuel1!=""){
$sql1 = $sql1 & " and vehicles.fuel='$fuel1' "
}
if ($transmission1!=""){
$sql1 = $sql1 & " and vehicles.transmission='$transmission1' "
}
if ($body1!=""){
$sql1 = $sql1 & " and vehicles.body='$body1' "
}
if ($mileage1!=""){
$sql1 = $sql1 & " and vehicles.mile_age='$mileage1' "
}
if ($age1!=""){
$sql1 = $sql1 & " and vehicles.age='$age1' "
}

$req =" SELECT * FROM clients,vehicles WHERE clients.id_client=vehicles.id_client " & sql1;
Commenter la réponse de cs_developper_man
Messages postés
5
Date d'inscription
vendredi 17 juin 2011
Statut
Membre
Dernière intervention
29 novembre 2011
0
Merci
il y'a un problème.La requête est vide,peut être qu'il y'a un problème au niveau de la structure de la requête
Commenter la réponse de kwikevin