Bonjour à tous,
un petit aperçu avant d'expliquer mon problème
Pièce jointe 464607
en fait voila, dans FORMATION après la sélection ( <select></select>) du SECTEUR j'aimerais afficher les formations qui sont dans le secteur sélectionné pour les mettre dans un autre <select></select>.
Puis après la sélection de la formation j'aimerais afficher le lieu de cette formation dans le <input type="text">.
ainsi que le Nom/Prénom/Émail des personnes qui s'occupent de cette formation dans la carte Email Assistant/Coordo.
c_ecouteClient.php (le controleur de la page)
Code:
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 <?php include("Vue/accueil/v_menuAccueil.php"); //action par defaut lorsque ce controleur est demandé if (!isset($_REQUEST['action'])) { $_REQUEST['action'] = 'voirFormEcouteCLient'; } $action = $_REQUEST['action']; switch ($action) { case 'voirFormEcouteCLient':{ //faire une requette. quand je selectionne le secteur cela m'affiche les formations disponibles dans ce secteur //pui quand je choisi une formation cela m'affiche le lieu et les membre du greta lier a cette formation $lesSecteurs= $pdo->getLesSecteurs(); $lesMembres = $pdo->getLesMembresGreta(); // $lesFormations = $pdo->getToutLesFormations($nom); // $formationParSecteur= $pdo->formationSecteur($idSect); include("Vue/accueil/v_ecouteClient.php"); break; } } ?>
class.pdo.inc.php (connexion a la bdd et les requêtes)
Code:
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 class PdoGreta{ private static $serveur='mysql:host=localhost'; private static $bdd='dbname=greta'; private static $user='root'; private static $mdp='' ; private static $monPdo; private static $monPdoGreta=null; /** ** Constructeur privé, crée l'instance de PDO qui sera sollicitée ** pour toutes les méthodes de la classe **/ private function __construct(){ PdoGreta::$monPdo = new PDO(PdoGreta::$serveur.';'.PdoGreta::$bdd, PdoGreta::$user, PdoGreta::$mdp); PdoGreta::$monPdo->query("SET CHARACTER SET utf8"); } public function _destruct(){ PdoGreta::$monPdo = null; } /** Fonction statique qui crée l'unique instance de la classe Appel : $instancePdoGreta = PdoGreta::getPdoGreta(); @return l'unique objet de la classe PdoGreta **/ public static function getPdoGreta(){ if(PdoGreta::$monPdoGreta==null){ PdoGreta::$monPdoGreta= new PdoGreta(); } return PdoGreta::$monPdoGreta; } public function getToutLesFormations($nom){ $req="SELECT formation.id as do,formation.nom as f,fichier,sesconv as nosession,sesnonconv,date_debut,date_fin, recrutement, cdpost,ville,effectif,plconv,plnonconv,actconv,actnonconv,level.niveau as lvl,tarif,hcentre,hent,diplm,exp,convention.obj as rep, cd,ch,cl,info,secteur.nom as sec,m1.id as idass, m1.nom as an,m1.prenom as ap,m1.tel as at,m1.email as ae,m1.statut as ast, m2.id as idcoordo, m2.nom as cn,m2.prenom as cp,m2.tel as ct,m2.email as ce,m2.statut as cs,m3.id as idcfc,m3.nom as cfcn, m3.prenom as cfcp,m3.tel as cfct,m3.email as cfce,m3.statut as cfcs FROM formation JOIN level ON formation.niveau=level.id JOIN convention ON formation.convention=convention.id JOIN secteur ON formation.secteur=secteur.id JOIN membre as m1 ON formation.cfc=m1.id JOIN membre as m2 ON formation.ass=m2.id JOIN membre as m3 ON formation.coo=m3.id WHERE secteur.nom='$nom'"; $res = PdoGreta::$monPdo->query($req); $form = array(); $form = $res->fetchAll(); return $form; } public function getLesSecteurs(){ $req="SELECT id,nom from secteur"; $res = PdoGreta::$monPdo->query($req); $lesLignes = array(); $lesLignes = $res->fetchAll(); return $lesLignes; } public function getIdSecteur(){ $nomsecteur=$_SESSION['nomSecteur']; $req="select id from secteur where nom='$nomsecteur'"; $res = PdoGreta::$monPdo->query($req); $lesLignes = array(); $lesLignes = $res->fetch(); return $lesLignes; }<br>}
v_ecouteClient.php
Code:
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 <!-- Formation --> <div class="card" style="width: 40rem;"> <div class="card-body"> <h4 class="card-title">Formation <i class="fa fa-graduation-cap" aria-hidden="true"></i></h4> <div class='form-group input-group'> <select name="secteur" id="secteur" onchange="chargerFormation" class='form-control' required> <option disabled selected>Secteur</option> <?php foreach ($lesSecteurs as $unSecteur) { $id= $unSecteur['id']; $nom = $unSecteur['nom']; echo ("<option value=$id>$nom</option>"); } ?> </select> </div> <div class='form-group input-group'> <select name="formation" id="Idformation" class='form-control'> <option disabled selected>Formation</option> <?php foreach ($lesFormations as $uneFormation) { $idF = $uneFormation['do']; $nomF= $uneFormation['f']; $ville= $uneFormation['ville']; $assNom= $uneFormation['an']; $assPrenom= $uneFormation['ap']; $assTel= $uneFormation['at']; $assEmail= $uneFormation['ae']; $cooNom= $uneFormation['cn']; $cooPrenom= $uneFormation['cp']; $cooTel= $uneFormation['ct']; $cooEmail= $uneFormation['ce']; $sec= $uneFormation['sec']; $idass= $uneFormation['idass']; $idcoordo= $uneFormation['idcoordo']; echo("<option value=$idF>$nomF</option>"); } ?> </select> </div> <div class="form-group input-group"> <input type="text" name="lieu" id="lieu" class="form-control" placeholder="Lieu" > </div> </div> </div> </div> <!-- fin du div formu --> <script> function chargerFormation() { var x = document.getElementById("secteur").value; document.getElementById("Idformation").innerHTML = "You selected: " + x; } </script>
j'arrive bien a afficher toutes mes formations dans le premier select mais le probleme est que je n'arrive pas a utiliser le select correctement pour afficher le reste dans les autres parties si quelqu'un peut m'aider ça sera vraiment cool car je ne maîtrise pas du tout ajax et comprends peu le js.
merci d'avance !!!