Bonjour,
J'ai un problème dans mes requetes.En effet,je veux créer un filtre qui consiste
à faire des recherches comme suit:
*Age du patient (2 champs pour mettre une fourchette d’âge : ex les patient de 50 à 60) pas de restriction si non saisie.
*Sexe (M ou F ou les deux ou aucunes restrictions).
*Décédé (oui / non ou aucunes restrictions).
J'ai créé un mon formulaire dans le fichier filtreSuccess.php comment suit:Mon action executeFiltre est la suivante:
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 <table> <thead> <tr> <form method="POST" action ="<?php echo url_for('prostate_recap/filtre')?>"> <th>Age <select name="age"> <option value="0"> </option> <option value="10">0-10 </option> <option value="20">10-20</option> <option value="30">20-30</option> <option value="40">30-40</option> </select> </th> <th>Sexe <select name="sexe"> <option value="0"> </option> <option value="1">M</option> <option value="2">F</option> </select> </th> <th>décedé <select name="decede"> <option value="0"> </option> <option value="1">oui</option> <option value="2">non</option></select></th> <input type="submit" value="filtrer"> </form> </tr> </thead> <tbody> <?php foreach ($test as $d): ?> <tr> <td><?php echo $d->getName() ; ?></td> </tr> <?php endforeach; ?> </tbody> </table> </div>Je ne sais pas pourquoi les filtres ne fonctionnent pas.Pourriez vous m'aider pour qu'il fonctionneront.
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 public function executeFiltre(sfWebRequest $request) { if($request->getParameter('sexe') != 0) { $this->test = Doctrine::getTable('Patient') ->createQuery('a') ->where('a.sex_id =?',$request->getParameter('sexe')) ->execute(); } else { $this->test = Doctrine::getTable('Patient') ->createQuery('a') ->where('a.sex_id =?',$request->getParameter('sexe')) ->execute(); } //filtre pour l'age de patient if($request->getParameter('age') != 0) { $this->test=array(); $pa = Doctrine::getTable('Patient') ->createQuery('a') ->execute(); foreach ($pa as $v) { $z=explode('-',$v->getDateOfBirth()); $zd=explode('-',date('d-m-Y')); $dif=$zd['2'] + 2 ; } } else { $this->test = Doctrine::getTable('Patient') ->createQuery('a') ->execute(); } //filtre pour le Décédé (oui / non ou aucunes restrictions) if($request->getParameter('decede') != 0) { $this->test = Doctrine::getTable('Patient') ->createQuery('b') ->where('b.date_of_death =?',$request->getParameter('decede')) ->execute(); } else { $this->test = Doctrine::getTable('Patient') ->createQuery('b') ->where('b.date_of_death =?',$request->getParameter('decede')) ->execute(); }
Partager