Recherche avancéé en PHP

Résolu/Fermé
Signaler
Messages postés
15
Date d'inscription
mardi 30 juin 2009
Statut
Membre
Dernière intervention
30 juillet 2009
-
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
-
Bonjour,

Je souhaite réaliser une recherche en utilisant 2 listes déroulantes pour le moment (il m'en faudra 30 plus tard).
Voici ce que j'ai actuellement:
Je mets juste un morceau
switch($_POST['distance_cote']) 
{
case "- de 10 km" : $where[] = "distance_cote < 10"; 
break;
case "de 10 à 20 km" : $where[] = "distance_cote BETWEEN 10 AND 20"; 
break;
case "de 20 à 40 km" : $where[] = "distance_cote BETWEEN 20 AND 40"; 
break;
case "de 40 à 50 km" : $where[] = "distance_cote BETWEEN 40 AND 50"; 
break;
case "+ de 50 km" : $where[] = "distance_cote > 50"; 
break;

}
}
 
$sql  = mysql_query("SELECT nom,profondeur,distance_cote FROM infos");
if (isset($where)) 
{
$sql .= "WHERE " . implode(' AND ', $where);
}
		}
	
}
mysql_close();
?>

2 réponses

Messages postés
816
Date d'inscription
samedi 21 juin 2008
Statut
Membre
Dernière intervention
17 juillet 2012
183
Bonjour,
j'ai manqué un épisode où il n'y a pas vraiment de question ?
^^
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
895
Ca peut marcher, mais

$sql = mysql_query("SELECT nom,profondeur,distance_cote FROM infos");
if (isset($where))
{
$sql .= "WHERE " . implode(' AND ', $where);


il faut que tu mettes un espace soit avant le WHERE soit après info

ensuite je rajouterait un default au switch case