Choix requête

Résolu
didy_gwatinik Messages postés 352 Date d'inscription   Statut Membre Dernière intervention   -  
didy_gwatinik Messages postés 352 Date d'inscription   Statut Membre Dernière intervention   - 12 janv. 2009 à 11:30
Bonjour,
Voilà je suis en train de faire un site de recherche d'offres d'emploi et de demandes d'emplois dans le domaine de l'informatique. Donc dans une base de données, on a des offres, des demandes ...
Mon problème arrive à la recherche où l'utilisateur peut sélectionner les champs secteur, région, contrat.
Faut-il que j'écrive autant de requêtes que de possibilités de requêtes, c'est-à-dire une requête où l'utilisateur saisit seulement le secteur et le contrat et non pas la région, une autre où il saisit tous les champs...
Il y a surement une petite astuce pour éviter toute l'écriture mais je ne vois pas quoi.
Si quelqu'un pouvait m'aider ...

1 réponse

muska92 Messages postés 277 Date d'inscription   Statut Membre Dernière intervention   42
 
bonsoir,
je te passe une petite astuce pour faire ca :

$where = "WHERE 1=1"; // juste pour crée la variable $where **/


if($_POST['contrat'] == 'CDD' ){ /** juste pour l'exemple **/

$where .= " AND CONT LIKE '%".mysql_real_escape_string($_POST['contrat'])."%'"; /*** CONT correspond a un champ dans la base de donné ***//
}

if(isset($_POST['region'])){
$where .= " AND REG ='$POST['region']'"; /* REG le champs région dans la base **/

}
ici la suite tu peut ajouter autant de champs qui existe, a chaque fois tu utilise avec le point : $where .=
puis ici a la fin :
$requete = "SELECT * FROM ta_base ".$where;
0
didy_gwatinik Messages postés 352 Date d'inscription   Statut Membre Dernière intervention   80
 
Ahhhh oui, ça marche impec! Merci beaucoup muska!
0