Bonjour, je suis en train de développer un site sur une clinique avec l'agent et je cherche d'afficher le patient dont le nss(numéro de sécurité sociale) correspond à celui que j'ai saisi dans le champ 'saisi' mais le problème, c'est que à chaque fois j'affiche le patient cherché en bas il y a la page où je dois créer un patient si le nss saisi ne correspond à aucun patient dans la base de donnée ou il n'y est pas présent puisque j'ai séparé la page où je dois saisir les patients ou les modifier dans GestionPatients.php e la page où j'affiche le patient cherché, ConsulterSynthèse.php. J'ai structuré le site en MVC.
Voici le fichier GestionPatients.php:
Et la page ConsulterSynthèse.php:
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
82
83
84
85 <html lang="fr"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Gestion</title> </head> <header> Gestion des patients </header> <body> <div> <h1>Consulter le synthèse</h1> <fieldset> <legend>Informations des patients</legend> <form method="post" action="clinique.php"> <p> <label for="prenom">Prenom:</label> <input type="text" name="prenom" id="prenom" /> </p> <p> <label for="nom">Nom:</label> <input type="text" name="nom" id="nom"/> </p> <p> <label for="adresse">Adresse:</label> <input type="text" name="adresse" id="adresse"/> </p> <p> <label for="numtel">Numéro de téléphone:</label> <input type="text" name="numtel" id="numtel"/> </p> <p> <label for="date">Date:</label> <input type="date" name="datet" id="date"/> </p> <p> <label for="nss">NSS:</label> <input type="text" name="nss" id="nss"/> </p> <p> <label for="dep">Département de naissance:</label> <input type="text" name="dep" id="dep"/> </p> <p> <label for="solde">Solde:</label> <input type="text" name="solde" id="solde"/> </p> <p> <input type="submit" name="ajoutsynthèse" value="Ajouter le patient" /> </p> </form> </fieldset> </div> <div> <fieldset> <legend>Modifier patient</legend> <form method="post" action="clinique.php"> <p> <label for="type">Qu'est-ce que tu veux modifier?</label> <select name="type" id="type" multiple > <option name="nommodif" value="nommodif">Nom</option> <option name="prenomodif" value="prenomodif">Prenom</option> <option name="adressmodif" value="adressmodif">Adresse</option> <option name="datemodif" value="datemodif">Date de Naissance</option> <option name="depmodif" value="depmodif">Département de naissance</option> <option name="soldemodif" value="soldemodif">Solde</option> <option name="nssmodif" value="nssmodif">NSS</option> <option name="numtelmodif" value="numtelmodif">Numéro de téléphone</option> </select> </p> <p> <input type="submit" name="modif" value="Modifier le patient"/> </p> </form> </fieldset> </div> </body> </html>
Et la page gabaritAgent qui correspond à la page accueil de l'agent:
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<!doctype html> <html lang="fr"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Consulter le synthèse</title> </head> <body> <header>Clinique</header> <fieldset> <legend>Liste des patients</legend> <?php echo "$contenu1"; ?> </fieldset> <footer>Informations</footer> </body> </html>
et la page vue.php contenu dans le dossier vue qui contient le fichier html:
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 <!doctype html> <html lang="fr"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Agent</title> </head> <body> <header> <nav> <ul> <li> <a href="depot.php">Gestion des dépôts</a> </li> <li><a href="paiement.php">Payements</a> </li> <li><a href="ListeRendezvous.php">Gestion des rendez-vous</a></li> </ul> </nav> </header> <fieldset> <legend>Saisir le NSS</legend> <form method="post" action="clinique.php"> <p> <label for="saisi">Saisie de NSS:</label> <input type="text" name="saisi" id="saisi"/> </p> <p> <input type="submit" name="saisienss" value="Afficher le patient"/> </p> </form> </fieldset> <p> <a href="vue/GestionPatients.php">Aller à la page de Gestion des patients</a> </p> <fieldset> <legend>Retrouver le NSS</legend> <form method="post" action="clinique.php"> <p> <label for="nomnss">nom de NSS:</label> <input type="text" name="nomnss" id="nomnss"/> </p> <p> <label for="datenss">date de naisance:</label> <input type="text" name="datenss" id="datenss"/> </p> <p> <input type="submit" name="retrouvenss" value="Retrouver le NSS"/> </p> </form> </fieldset> <footer> <a href="vue/InformationsAgents.php">Informations</a> </footer> </body> </html>
et page modele.php:
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 <?php function afficherMedecin(){ $accueil=''; require_once('gabaritMedecin.php'); } function afficherAgent(){ $accueil=''; require_once('gabaritAgent.php'); } function afficherDirecteur(){ $accueil=''; require_once('gabaritDIrecteur.php'); } function afficherAccueil() { $accueil = ''; require_once('Accueil.php'); } function afficherPatientCherche($nss){ $contenu1=''; foreach($nss as $patient){ $contenu1.='<p>{ nom:'.$patient->nom.' , prenom: '.$patient->prenom.', adresse: '.$patient->adresse. ', numero de téléphone: '.$patient->numtel.' , date de naissance: '.$patient->datenaiss.' , département de naissance: '. $patient->departnaiss.',solde: '.$patient->solde.' } </p>'; } require_once('ConsulterSynthèse.php'); } function afficheGestionPatients(){ $acc=''; require_once("GestionPatients.php"); }
et page accueil:
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 <?php require_once('connect.php'); function getConnect(){ require_once('connect.php'); $connexion = new PDO('mysql:host=' . SERVEUR . ';dbname=' . BDD, USER, PASSWORD); $connexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $connexion->query("SET NAMES UTF8"); return $connexion; } function AjouteLogin($mdp,$categorie){ $connexion=getConnect(); $req="INSERT INTO employe VALUES (0,'$mdp','$categorie')"; $res=$connexion->query($req); $res->closeCursor(); } function AjoutePatient($nom,$prenom,$date,$dep,$nss,$numtel,$adresse,$solde){ $connexion=getConnect(); $req="INSERT INTO patient(nss,idrdv,nom,prenom,adresse,numtel,datenaiss,departnaiss,solde) VALUES ('$nss',0,'$nom','$prenom','$adresse',$numtel,'$date',$dep,$solde)"; $res=$connexion->query($req); $res->closeCursor(); } function ChercherPatient($nss){ $connexion=getConnect(); $req="SELECT idrdv,nom,prenom,adresse,numtel,datenaiss,departnaiss,solde from patient where nss='$nss'"; $res=$connexion->query($req); $res->setFetchMode(PDO::FETCH_OBJ); $patientcherche=$res->fetchAll(); $res->closeCursor(); return $patientcherche; } function SelectionnePatient(){ $connexion=getConnect(); $req="SELECT nss,idrdv,nom,prenom,adresse,numtel,datenaiss,departnaiss,solde from patient "; $res=$connexion->query($req); $res->setFetchMode(PDO::FETCH_OBJ); $pazienti=$res->fetchAll(); $res->closeCursor(); return $pazienti; }
et la page controleur:
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 <!doctype html> <html lang="fr"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Accueil</title> </head> <body> <header> Accueil Accès compte </header> <fieldset> <legend>S'identifier</legend> <form method="post" action="clinique.php"> <p> <label for="id">Login:</label> <input type="text" id="id" name="id"/> </p> <p> <label for="mdp">Mot de passe:</label> <input type="password" id="mdp" name="mdp"/> </p> <p> <input type="submit" name="identité" value="S'identifier"/> </p> </form> </fieldset> <footer> Informations </footer> </body> </html>
le page clinique.php qui contient le site en entier:
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 <?php require_once("modele/modeleAgent.php"); require_once("vue/vue.php"); function CtlAccueil(){ afficherAccueil(); } function CtlLogin($log,$mdp){ if (!empty($log) and !empty($mdp)){ if (strstr($log,"med")) { $categorie = "medecin"; afficherMedecin(); AjouteLogin($mdp, $categorie); } elseif (strstr($log,'dir')) { $categorie = "directeur"; afficherDirecteur(); AjouteLogin($mdp, $categorie); } elseif (strstr($log,'agent')) { $categorie="agent"; afficherAgent(); AjouteLogin($mdp,$categorie); } else { throw new Exception("réessayer saisie"); } } else{ throw new Exception("Les champs sont vides, se reconnecter"); } } function CtlGestionPatients(){ afficheGestionPatients(); } function CtlAffichePatient($nss){ $p=ChercherPatient($nss); afficherPatientCherche($p); } function CtlPatient($nssaisie) { $paziente = SelectionnePatient(); $nss = SelectionneNSS(); if (!empty($nssaisie)) { for ($i = 0; $i < count($paziente); $i++) { $pat = $paziente[$i]; $pa = (array)$pat->nss; if (in_array($nssaisie, $pa)) { foreach($pa as $nns) { if ($nssaisie == $nns) { CtlAffichePatient($nssaisie); } else { continue; } } }else{ CtlGestionPatients(); } } } else { throw new Exception("le champ de saisie NSS est vide"); } } function CtlAjoutePatient($nom,$prenom,$date,$dep,$nss,$numtel,$adresse,$solde){ if (!empty($nom) && !empty($prenom) && !empty($date) && !empty($dep) && !empty($nss) && !empty($numtel) && !empty($adresse) && !empty($solde)){ AjoutePatient($nom,$prenom,$date,$dep,$nss,$numtel,$adresse,$solde); }else{ throw new Exception("les champs sont vides"); } }
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 <?php require_once('controleur/controleur.php'); try { if (isset($_POST["identité"])){ $log=$_POST['id']; $mdp=$_POST['mdp']; CtlLogin($log,$mdp); }elseif(isset($_POST['ajoutsynthèse'])){ $nom=$_POST['nom']; $prenom=$_POST['prenom']; $adresse=$_POST['adresse']; $date=$_POST['datet']; $dep=$_POST['dep']; $solde=$_POST['solde']; $numtel=$_POST['numtel']; $nss=$_POST['nss']; CtlAjoutePatient($nom,$prenom,$date,$dep,$nss,$numtel,$adresse,$solde); } elseif (isset($_POST['saisienss'])){ $nssai=$_POST['saisi']; CtlPatient($nssai); } else{ CtlAccueil(); } } catch (Exception $e){ $msg = 'Erreur dans le file: '.$e->getFile().' , ERREUR dans la ligne '. $e->getLine() . ' : ' . $e->getMessage() ; exit($msg); }
Partager