welcome to you

welcome to you

projet IN 5O3 site web de prise de rendez vous dans un hopital

 







UE 503 : BASE DE DONNEES ET SITES WEB DYNAMIQUES





Projet réalisé par :

          • MEKAM GUY MERLIN 09YI008

          • MBONDO NOE RAOUL 09YI010

          • MBIAKEU KAMMI ALICE 09YI071

          • MANTHO CHRISTINE 09YI059

          • MESSINA MIREILLE 09YI049



Sous la supervision de:

NJUH WALTER


Année académique 2010-2011

Sommaire

Introduction…………………………………………………………………………………………………………………….2

I-COLLECTE DE DONNEES RELATIVES AU SITE WEB………………………………………………………….2

II-ANALYSE DES DONNEES COLLECTEES…………………………………………………………………………..3

II.1-Définition du public cible…………………………………………………………………………………………..3

II.2- Définition des services…………………………………………………………………………………………….4

II.3- Analyse des besoins et contraintes sur les pages…………………………………………………….4

II.4- Analyse de la base de données correspondante………………………………………………………5

II.2.1- Identification des acteurs…………………………………………………………………………………….5

II.2.2- Propriétés des acteurs (Entités) ……………………………………………………………………….….6

II.2.3-Règles de gestion………………………………………………………………………………………………….6

II.2.4-Dépendances fonctionnelles………………………………………………………………………………….6

II.2.5- Graphes de couverture minimale…………………………………………………………………………7

II.2.6- Traduction vers le schéma Entité-Association normalisé……………………………………..7

III-CONCEPTION DU SITE WEB……………………………………………………………………………………….8

III.1-Architecture de communication……………………………………………………………………………..8

III.2- Description des informations présente sur chacune des pages…………………………....8

III.3-Présentation générale de chaque page………………………………………………………………….9

III.4- Conception de la base de données……………………………………………………………………….9

IV-IMPLEMENTATION DU SITE WEB……………………………………………………………………………10

VI.1- Création de la base de données………………………………………………………………………….10

VI.2- Création des tables de la base données………………………………………………………………10

VI.3- Remplissage de quelques tables…………………………………………………………………………11

VI.4- Création de la page d’accueil du site………………………………………………………………….12



Introduction

Internet est l’outil par excellence pour se faire connaître de tous .c’est aussi le meilleur moyen pour les organismes ou les entreprises de vendre leurs produits et services. Les particuliers, les PME, les grandes structures commerciales, les sociétés aussi bien privées que publics bref tous les secteurs pour se faire connaître ou mieux servir leur clientèle utilisent les médias (radio, télévision, …). Mais tout ces différents moyens précédemment cités ont une portée faible (rayon d’action très limités) et ne donnent pas la possibilité aux usagers de pouvoir interagir avec l’organisation. De plus Internet aujourd’hui occupe une place de choix dans la vie de tous les jours à travers ses multiples services et plus particulièrement son gain de temps.

C’est ainsi que ce projet s’inscrivant dans un cadre académique et plus précisément au compte de l’UE IN503 intitulé base de données et sites web dynamiques, il nous est demandé de mettre sur pied une application de gestion en ligne des rendez-vous dans un hôpital. Le centre hospitalier que nous définirons tout au long de ce projet est fictif, c'est-à-dire n’est qu’une imagination de notre part. Toutefois ses fonctionnalités cadrent similairement à un centre hospitalier réel.

Ainsi le présent document sera structuré ainsi qu’il suit :

  • Une première partie réservée à la présentation du projet et à la collecte de donnée

  • Une deuxième partie réservée à la l’analyse des données collectées sur le terrain et ceci couronné avec la construction d’une base de donnée

  • Une troisième partie réservée à l’implémentation de l’application


I-COLLECTE DE DONNEES RELATIVES AU SITE WEB

Traditionnellement le centre hospitalier << la patience >> gère ses patients dans ses divers services et par ses multiples médecins. En effet chaque patient se rend au centre pour un problème de maladie, un malaise ou un rendez-vous pris précédemment. Qu’importe l’une ou l’autre des raisons, toujours est-il dit que le patient devra suivre la procédure afin de pouvoir prendre contacte avec un médecin. Tout compte fait chaque patient devra attendre son tour avant de pouvoir être servi. Vu la renommé du centre hospitalier, son personnel médical est souvent confronté à de longues files d’attentes de la part des patients. Des fois il arrive que les patients ne soient pas tous reçu du fait d’une très longue file d’attente. Le temps perdu et les frustrations engendrées ne constituent nullement un avantage pour un malade ; au contraire, ne servent qu’empirer son état. Toute cette situation n’est non plus très bonne pour le centre hospitalier. Pour tous ses multiples problèmes le chef service voudrait dont mettre sur pied une application qui répondrait aux attentes ci-après :

  • Mettre l’information à la disposition de tous (Patients, Médecins et autres).

  • Limiter les longues files d’attentes devant les différents services

  • Permettre la disponibilité des médecins selon leur spécialisation

  • Améliorer la qualité de service

  • Etablir une base de données des différents patients de l’hôpital

  • Mettre sur pied une procédure de prise de rendez vous à distance aussi simple que possible

  • Permettre au malade de choisir lui même le médecin qui va le recevoir



II-ANALYSE DES DONNEES COLLECTEES

II.1-Définition du public cible

Dans cette section il est question pour nous d’identifier et de définir les utilisateurs potentiels de l’application. A cet effet le site web sera destiné aux catégories d’utilisateurs suivants :

  • Les malades : Qui peuvent consulter le site pour prendre les informations sur la disponibilité des personnels ou même prendre des rendez-vous

  • Les médecins : Qui peuvent consulter le site pour prendre les informations sur leur différents rendez-vous journalier

  • Les internautes novices et visiteurs occasionnels : Qui peut consulter le site pour prendre des informations sur le fonctionnement interne de l’hôpital


Tous ces gens doivent en plus remplir les critères ci-après :

Tranche d’âge

Tranche d’âge compris entre 12 et 50 ans

Catégories socio-professionnel

Fonctionnaires, non fonctionnaire, (Pauvre, riche, etc…)

Statu matrimonial

Marié, Célibataire, divorcé

Sexe

Homme, femme

Compétence informatique

Internaute novice

En plus de tous ceci le site Web sera exclusivement réservé aux voyants

II.2- Définition des services

Dans cette section il est question pour nous de définir les services qu’offrira le site web qui sera mis sur pied, c'est-à-dire les raisons qui peuvent amener un utilisateur à visiter le site web. A cet effet les principaux services qu’offrira le site sont :

  • Prise de rendez-vous

  • Prise d’information

II.3- Analyse des besoins et contraintes sur les pages

La prise de rendez vous est la raison d’être du site. Pour se fait pour prendre un rendez vous, l’utilisateur devra remplir un formulaire comportant les informations sur son identité, sur la date et l’horaire du rendez vous ainsi que l’un des médecins disponibles et approprié pour ce rendez vous.

L’information est le second service qu’offrira le site. A travers ce service, les internautes pourront prendre les informations sur la présentation générale de l’hôpital, sur son fonctionnement, sur son personnel, prendre de petits astuces de santé, de beauté et autre. Les médecins quant à eux pourront se connecter pour consulter leurs différents rendez vous et d’autre information y référent.

Pour une meilleure lisibilité le site sera constitué de quelques pages dont les principales sont les suivantes :

  • Une page d’accueil sur laquelle l’on retrouvera

  • Une brève présentation de l’hôpital

  • Une page rendez vous qui permettra de prendre directement un rendez vous

Ici le patient à la possibilité de prendre directement un rendez vous avec un médecin. Pour ce fait il devra suivre les indications données par la page et remplir le formulaire qui lui sera proposé

  • Un page présentation qui va comprendre :

  • Le plan de l’hôpital

  • La présentation des différents départements de l’hôpital ainsi que des médecins y travaillant

  • La localisation de l’hôpital

  • Une page Info: qui comprendra :

  • Les conseils sur la santé, le sport et l’hygiène

  • Les astuces pour résoudre facilement certains petits problèmes de santé et autre

II.4- Analyse de la base de données correspondante

II.2.1- Identification des acteurs

En tant qu’acteur nous entendons une entité humaine ou matérielle (interne ou externe au système), intervenant dans le système d’information. A travers l’étape de l’étude des besoins, les acteurs intervenant dans processus de prise de rendez-vous sont :

  • Le patients/Malades

  • Médecins

  • Spécialités

  • Pages





II.2.2- Propriétés des acteurs (Entité)

Dans cette seconde section nous définissons les attributs liés à chaque entité recensées précédemment. Ainsi les attributs de chaque entité seront représentées comme suite : Entités (attribut1, attribut2, …, attributsn).

Médecins (Numéro_Matricule, Nom, Prénom, Spécialité_Médecin, Numéro_Tel_Médecin)

Patients (Numéro_Matricule, Nom, Prénom, Numéro_Tel_Patient)

Spécialité (Libelé_Spécialité)

Page (Id_Page, Nom_Page, Mots_Clé, Parent_Page, Contenu_Page)


II.2.3-Règles de gestion

Pour ce qui concerne notre système d’information, les règles de gestion sont les suivantes :

  • Un patient peut prendre plusieurs rendez-vous (plusieurs malaises avec différents médecins)

  • Un médecin peut donner plusieurs rendez vous (plusieurs patients)

  • Une pise de rendez-vous inscrit le patient dans le système

  • Un numéro médecin détermine la spécialité du médecin

  • Un numéro patient détermine le nom et le prénom du patient

  • Un numéro médecin détermine l’identité du médecin (nom, prénom, N°Tel)

  • Un numéro médecin et un numéro médecin détermine le rendez- vous (jour, heure)

  • Un rendez n’a lieu qu’une fois en une journée entre un patient et un médecin.


II.2.4-Dépendances fonctionnelles

Les règles de gestions nous ont permis de ressortir les dépendances fonctionnelles suivantes :

Med_Num → Med_Nom, Med_Prénom, Med_N°tel

Med_Num → Med_Spe

Pat_Num → Pat_Nom, Pat_Prénom, Pat_N°tel

Pat_Num, Med_Num, RDV_Date → RDV_Heure

Id_page→Nom_page


II.2.5- Graphes de couverture minimale


Le graphe ci-dessous est obtenu à partir des dépendances fonctionnelles précédemment identifiées







II.2.6- Traduction vers le schéma Entité-Association normalisé


Le MCD ci-dessous est obtenu en appliquant les règles de passages du graphe de couverture minimale vers le MCD















III-CONCEPTION DU SITE WEB

III.1-Architecture de communication





A travers cette présentation, il ressort que le site aura une structuration hiérarchisé. Cette architecture est adaptée au public ciblé ici.

III.2- Description des informations présente sur chacune des pages

Onglets

Chaque page sera constitué de quatre onglets à savoir :

L’onglet page d’accueil

L’onglet page rendez-vous

L’onglet présentation

L’onglet information


Menus

Les ongles Présentations et information seront constitués comporteront des menus arborescents présenté comme suite

Présentations Infos





Navigation

-En cliquant sur chaque onglet, il est possible d’accéder à la page correspondante

-En cliquant sur le symbole → (resp ←) il sera possible d’accéder à la page suivante (resp à la page présente).


II.3-Présentation générale de chaque page

Chaque page du site doit avoir la structure suivant








II.4- Conception de la base de données

Dans cette partie, nous complétons le MCD produit au précédent paragraphe par la mise en place de Modèle Logique de Données. Par ce modèle, nous indiquons comment les données seront organisées dans la base de données.


En utilisant les règles de transformations connues, nous obtenons les tables suivantes :











IV-IMPLEMENTATION DU SITE WEB

VI.1- Création de la base de données

Basehopital est le nom de la base de données et la commande permettant de la créer est la suivante :

CREATE DATABASE `Basehopital`

CREATE TABLE `Basehopital`.`Médecins` (

`Méd_num` VARCHAR( 5 ) NOT NULL ,
`Spé_lib` CHAR( 15 ) NOT NULL ,
`Méd_nom` CHAR( 10 ) NOT NULL ,
`Méd_prenom` CHAR( 10 ) NOT NULL ,
`Méd_N°tel` INT( 8 ) NOT NULL ,
PRIMARY KEY ( `Méd_num` )

) ENGINE = MYISAM COMMENT = 'Cette table contient les informations sur les médecins'

VI.2- Création des tables de la base données

  • Création de la table médecins

CREATE TABLE `Basehopital`.`Patients` (

`Pat_num` VARCHAR( 6 ) NOT NULL ,
`Pat_nom` CHAR( 10 ) NOT NULL ,
`Pate_prenom` CHAR( 10 ) NOT NULL ,
`Pat_N°tel` INT( 8 ) NOT NULL ,
PRIMARY KEY ( `Pat_num` )

) ENGINE = MYISAM COMMENT = 'Cette table contient les informations sur lespatients';

  • Création de la table Rendez-vous

CREATE TABLE `Basehopital`.`Rendez_vous` (

`Méd_num` VARCHAR( 5 ) NOT NULL ,
`Pat_num` VARCHAR( 6 ) NOT NULL ,
`RDV_HD` TIME NOT NULL ,
`RDV_HF` TIME NOT NULL ,
`RDV_Date` DATE NOT NULL ,
PRIMARY KEY ( `Méd_num` , `Pat_num` )

) ENGINE = MYISAM COMMENT = 'Cette table contient les informations sur les rendez_vous';

  • Création de la table Spécialité

CREATE TABLE `Basehopital`.`Spécialités` (

`Spé_lib` CHAR( 15 ) NOT NULL ,
PRIMARY KEY ( `Spé_lib` )

) ENGINE = MYISAM COMMENT = 'Cette regroupe toutes les spécialités d''un hopital';

  • Création de la table Pages

CREATE TABLE `Basehopital`.`Pages` (

`Pag_id` VARCHAR( 3 ) NOT NULL ,
`Pag_nom` CHAR( 10 ) NOT NULL ,
`Pag_cont` TEXT NOT NULL ,
`Pag_descp` TEXT NOT NULL ,
`Pag_parent` CHAR( 10 ) NOT NULL ,
PRIMARY KEY ( `Pag_id` )

) ENGINE = MYISAM COMMENT = 'Cette table contient les informations sur les pages du site';


VI.3- Remplissage de quelques tables

  • Remplissage de la table médecins

INSERT INTO `Basehopital`.`médecins` (

`Méd_num` ,
`Spé_lib` ,
`Méd_nom` ,
`Méd_prenom` ,
`Méd_N°tel`

)
VALUES (

'0M001', 'Chirugien', 'Kenfack', 'Bertrand', '77974512'

), (

'0M002', 'Fokou', 'jean', 'Ophtamologue', '79454123'

);

INSERT INTO `Basehopital`.`médecins` (

`Méd_num` ,
`Spé_lib` ,
`Méd_nom` ,
`Méd_prenom` ,
`Méd_N°tel`

)
VALUES (

'0M004', 'Ophtamologue', 'Kengne', 'Gilbert', '77451269'

), (

'0M007', 'Pédiatre', 'Mvondo', 'Constantin', '74523690'

);-





VI.4- Création de la page d’accueil du site

Elle est présentée comme suite.

Cette page est la page d’accueil de notre site web, présente à peu près l’hôpital et les principaux services à travers son interface

CODES SOURCES de la page index.php :

<html>

<head>

<title> Ma première page</title>

<link rel="stylesheet" type="text/css" href="fueille_style.css">


</head>

<body background ="Sitehopital/Image/bodybg.gif ">

<table border=0 width="100%">

<tr> <th colspan="5"><img width="100%"src="Sitehopital/Image/Bienvenue.gif "> </th> </tr>

<tr height="10%" ><td width="25%"> <blink> <a href="#"> <strong>Accuille</strong> </a> </blink> </td> <td width="18.75%"><a href="./presentation.html">Presentation </a> </td>

<td width="18.75%"><a href="./formulaire.php">prise de rendez vous </a></td> <td width="18.75%"><a href="./information.html">Information </a> </td> <td width="18.75%"><a href="./information.html">conseils </a></td></tr>

<tr><td height="15%" > <img width="100%" src="Sitehopital/Image/bordservice.gif "></td> <td rowspan="4" colspan="4" >Le centre de santé la patience est un hopital public fondé en 1990 <br> par le doctor <strong>Mbondo noe raoul</strong> de nationnalité <strong>Camerounaise</strong>.

<br> Elle regroupe en son sein les médecins éfficaces formés au CHUCentre Hospitalier Universitaire de Yaoundé<sup>CHU</sup> de yaounde<br>

et offre de multiples services: <br>

<img src="Sitehopital/Image/instr1.jpeg " align="right"> <img src="Sitehopital/Image/Soin2.jpg " align="left"> <ul>

<li>premiers soins

<li>accouchement

<li>Etc...

<li>chirugie

</ul>

<br>La patience est un hôpital moderne, de taille réduite, est une <br> institution complexe. Outre ses fonctions purement médicales, <br> l'hôpital doit fournir de nombreux services à ses patients et à <br> son personnel. Une partie importante de la surface d'un hôpital <br> est ainsi occupée par la chaufferie, la laverie, les cuisines, les <br> cafétérias, la lingerie et les réserves.<img src="Sitehopital/Image/Soin1.jpg " align="center">

</td> </tr>

<tr><td td height="15%"><img width="100%" src="Sitehopital/Image/photo259.jpg "></td> </tr>

<tr><td> Texte col 1 ligne 2</td> </tr>

<tr><td> Texte col 1 ligne 2</td> </tr>

</body>

</html>

CODE SOURCE du fichier style.CSS

h1 { /** gros titre */

font-family: serif; /* On se permet un changement de police : pas plus de deux par page, et à utiliser avec parcimonie (c'est le cas) */

background: #0066CC none; /* Fond du titre bleu (et sans image de fond) */

color: white; /* Donc on utilise une police blanche pour que le texte soit visible */

border: 3px dotted #9999FF; /* On encadre le titre d'un bleu clair de 3 pixels de largeur */

padding: 0.3em; /* Espacement intérieur non nul pour que le texte ne colle pas à la bordure du cadre */

text-align: center; /* Le titre doit être centré ! */

letter-spacing: 0.3em; /* On espace les caractères pour que ce soit joli :-) */

}

h2{

color: black; /* Donc on utilise une police blanche pour que le texte soit visible */

border: 3px dotted black-solide;

padding: 0.3em; /* Espacement intérieur non nul pour que le texte ne colle pas à la bordure du cadre */

text-align: center; /* Le titre doit être centré ! */

}

h4{

text-align: center;

color : red;

}

em{color: indigo;

}

img {text-align: center;

background-position: top;

}

td{

background-color: gray;

}

body {background-color: #BADBFF;

background-position: center;

margin: 1em;

}

p, li {

text-align: justify; /* Justifier le texte des paragraphes et des lignes de listes */

}

p:first-letter { /* Pour la première lettre de chaque paragraphes : */

font-size: x-large; /* Utiliser une police large */

font-weight: bold; /* Et grasse */

color: #0000AA; /* De couleur bleu foncée */

}

tr{

text-align: center;

}

table{tr: center;}



CODE SOURCE FORMULAIRE ET PRESENTATION :

Notre formuliare de prise de rendez vous se presente de la façon suivante :






CODE SOURCE de formulaire.php

<?php

include('fonction.php');

?>

<html>

<head>

<title> formulaire</title>

<link rel="stylesheet" type="text/css" href="fueille_style.css">

</head>

<body>

<h1> Formulaire de prise de rendez vous</h1>

<hr/>

<br/>

<table><caption><h4><em>Onglets</em></h4></caption>


<tr>

<td><a href="./accuiell.html"> <strong>Accueil</strong> </a></td>

<td><a href="./presentation.html"><strong>Presentation </strong> </a></td>

<td><a href="#">prise de rendez vous </a></td>

<td><a href="./information.html">Information </a></td>

</tr>

</table><br/><br/>

<h2>remplir le formulaire suivant</h2><br/>

<form method="post" action="./accuiell.html">

<p>

Nom: <input type="text" size="20" name="nom_patient"/><br/><br/>

Prenom: <input type="text" size="20" name="prenom_patient/"><br/><br/>

date de naissance: <input type="text" size="4" name="annee_naissance"/> mois: <input type="text" size="2" name="mois"/> jour: <input type="text" size="2" name="jour"/> Lieu: <input type="text" size="20" name="lieu"/><br/><br/>

<p>sexe</P>

homme <input type='radio' name='sexe' value='homme'checked="1"/>

femme <input type='radio' name='sexe' value='femme' checked="1"/>

<br/><br/>

Fonction: <input type="text" size="20" name="fonction"/><br/><br/>

<p>Date de rendez vous</p>

annee: <input type="text" size="4" name="annee"/> mois: <input type="text" size="2" name="mois"/> jour: <input type="text" size="2" name="jour"/><br/><br/>

</p>

<input type="submit" value="valider" name="valider"/> <input type="reset" name="efface"/>

</form>

<p><a href="./accuiell.html"> allez a la page d'accueille </a>

<div>

<?php

$date = date("d-m-y");

echo "Yaounde le: ";

echo "$date";

?>

<div>

<?php

// insertion des données dans la bd

if(isset($_POST["valider"])){

connection("hopital");

$nom_patient=$_POST["nom_patient"];

$prenom_patient=$_POST["prenom_patient"];

$fonction_patient=$_POST["fonction"];

$jour_naissance=$_POST["jour_naissance"];

$mois_naissance=$_POST["mois_naissance"];

$annee_naissance=$_POST["annee_naissance"];

$datenaissance=$jour_naissance."/".$mois_naissance."/".$annee_naissance;

//$requete="INSERT INTO `patient` ( `id` , `nom` , `prenom` , `fonction` , `date_naissance` ) VALUES (NULL,'$nom_patient','$prenom_patient','$fonction','$date_naissance');

$requete="INSERT INTO `patient` ( `id` , `nom` , `prenom` , `fonction` , `date_naissance` ) VALUES (NULL,".$nom_patient.",".$prenom_patient.",".$fonction.",".$date_naissance.");";

$resultat=mysql_query($requete);

deconnection();

}

?>

</div>

</body>

</html>

CODE SOUSE FEUILLE DES FONCTIONS.PHP

<?php

function connection($name){

$host="localhost";

$user="root";

$passwd="";

mysql_connect($host,$user,$passwd);

mysql_select_db($name);

}


function deconnection(){

mysql_close();

}


function dateaujourdhui(){

$d=date("d-m-y");


}

?>




18/07/2011
0 Poster un commentaire

Inscrivez-vous au blog

Soyez prévenu par email des prochaines mises à jour