Bonjour à tous,
Après avoir envisagé le suicide pendant 2 secondes, je me suis rappelé que les membres de Développez m'avait déjà aidé par le passé.
Le défis du jour est donc le suivant:
J'ai modifié un script de moteur de recherche trouvé sur le web pour l'adapter à mon besoin et jusqu'à ce jour tout allait bien. Le principe est assez simple, une page PHP de recherche avec quatre listes déroulantes. Les utilisateurs peuvent choisir d'utiliser l'ensemble ou seulement certaines de ces listes pour affiner leur recherche (l'opérateur est AND).
une page de résultat PHP affiche sous forme de tableau la liste éléments présents dans la table (unique) correspondant aux critères de recherche.
Depuis quelques jours, je rencontre un problème parce que je souhaite que la valeur d'un choix effectué dans l'une des liste déroulante soit utilisé pour être recherchée dans deux champs de ma table. (avant c'était uniquement dans un seul champs). J'ai bien essayé d'utiliser OR, la recherche fonctionne correctement lors que la liste déroulante est utilisée seule mais des qu'il y a plus d'une liste déroulante utilisée dans la recherche, les résultats ne sont plus filtrés.
La parte du code posant problème est celle de la valeur de $corps_emploi qui doit être recherchée dans les champs corps_emploi ou corps_emploi2 de ma table
Toute aide est la bienvenue, merci!
Le code de la page de recherche est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81 <? include("../JE/connJE.php"); $corps_emploi=$_POST["corps_emploi"]; $corps_emploi2=$_POST["corps_emploi"]; $domaine_emploi=$_POST["domaine_emploi"]; $region=$_POST["region"]; $MO=$_POST["MO"]; $o="AND"; $rest=""; $text="Critère(s) utilisé(s): "; if($corps_emploi!="") { if($rest=="") { $rest.=" where corps_emploi='$corps_emploi' OR corps_emploi2='$corps_emploi' "; $text.="Corps d'emploi $corps_emploi "; } else { $rest.=" $o corps_emploi='$corps_emploi' "; $text.=", Corps d'emploi = $corps_emploi "; } } if($domaine_emploi!="") { if($rest=="") { $rest.=" where domaine_emploi='$domaine_emploi' "; $text.="Domaine d'emploi = $domaine_emploi "; } else { $rest.=" $o domaine_emploi='$domaine_emploi' "; $text.=", Domaine d'emploi = $domaine_emploi "; } } if($region!="") { if($rest=="") { $rest.="where region='$region' "; $text.="Région = $region "; } else { $rest.=" $o region='$region' "; $text.=", Région = $region "; } } if($MO!="") { if($rest=="") { $rest.="where MO='$MO' "; $text.="Ministère ou Organisme = $MO"; } else { $rest.=" $o MO='$MO' "; $text.=", Ministère ou Organisme = $MO"; } } if($rest!="") { $rest=$rest; } else { //die("Enter Search Parameter<br>"); } $sql="select $TP2013.* from $TP2013 $rest"; $result=mysql_query($sql,$connection) or die(mysql_error()); $num=mysql_num_rows($result); ?>
Partager