Requete pour recherche

Requete pour recherche - SQL/NoSQL - Programmation

Marsh Posté le 10-06-2002 à 15:40:56    

salut à tous,
voilà je dois faire une page de recherche de données dans mysql et le truc c'est que la recherche peut de faire soit par pays soit par entreprise soit par date...
comment faire pour ne pas avoir plein de test(if) et effectuer une seule requete qui prendra en clause where que les champs renseignés?
Merci d'avance!

Reply

Marsh Posté le 10-06-2002 à 15:40:56   

Reply

Marsh Posté le 10-06-2002 à 16:57:15    

Tu dois bien avoir un formulaire où le mec choisit dans quel champs il veut chercher (pays, date...).
 
imaginons que tu aies un input type="text" pour le champs de recherche (name="motsRecherche" ).
 
Tu as aussi trois boutons radios(name="typeRecherche" )  
(un pour pays->value="pays",  
un pour date->value="date",  
un pour entreprise->value="ent" ).  
 
On clique sur valider, et hop, on arrive dans le fichier de traitement:
 
là, tu dis en gros :
 
if ($typeRecherche=="pays" ){
$maRequete="WHERE tonChampsPays='$motsRecherche'";
}
elseif ($typeRecherche=="date" ){
$maRequete="WHERE tonChampsDate='$motsRecherche'";
}
else {
$maRequete="WHERE tonChampsEntreprise='$motsRecherche'";
}
 
 
et ensuite, ta requete c'est :
 
$requete= " SELECT * FROM TaTable $maRequete";
etc...
 
Bon, ya deux trois if, c'est pas la mort, non...??

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed