Vous êtes sur la page 1sur 53

1

Chacun d''entre nous a la possibilité de comprendre que, aussi


insignifiant et
impuissant qu'il soit, il peut changer la face du monde. Or, chacun
doit
commencer par lui-même. Et Si chacun attendait l'autre, tout le
monde
attendrait en vain.' Alors :

- Engagez-vous!
- Informez-vous!
- Participez à la discussion!
- Devenez membre d'un groupe de travail!
- Développez votre ville! Votre village !

(Vaclav Havel)
2
DÉDICACE

J'ai le grand plaisir de dédier ce travail :

- A mes parents :( MUNGOBO TSHOMBA Nestor et KABEMBA KILALA


Anjelani) Pour toute l''affectation et l''encouragement dont ils
m'ont fourni malgré leur lourde responsabilité ; rien ne pourrait
compenser ces sacrifices sauf les sentiments d'autosatisfaction et
le bonheur de voir les efforts compensés par mes réussites ;

- A mes sœurs, cousines et frères, cousins : en témoignage des liens


solides et intimes qui nous unissent en vous souhaitant un avenir
plein de succès et de bonheur.

- A Tous mes amis et collègues et particulièrement les plus intimes


en témoignage des moments inoubliables, des sentiments purs, et des
liens solides qui nous unissent.

- A notre très cher directeur, qui est aussi une réelle motivation
de travailler pour nous, le Chef de Travaux, Samy BOFANDO BOLONGOLA.
3
REMERCIEMENT

A l'issue de présent travail de fin d’étude universitaire du premier


cycle en science informatique, faculté de Maintenance et Réseaux à
l’Institut Supérieur d’Informatique, Programmation « ISIPA » en
sigle, c'est pour nous un agréable moment d'exprimer notre gratitude
à tous ceux et à toutes celles qui de près ou de loin, chacun à sa
manière, ont contribué à notre formation et ont rendu possible la
réalisation de ce travail.

Il nous serait bien difficile de les citer tous, mais nous nous
souvenons de tous avec grande reconnaissance, Que le Seigneur Jésus
Christ mon Dieu « Mungu wa Mapendo » vous bénisse richement et vous
en rende au centuple ;

A mes très chers et aimables parents : MUNGOBO TSHOMBA Nestor et


KABEMBA KILALA Anjelan pour votre amour, votre soutien en tout, vos
conseils, vos prières, votre compassion, votre haute qualité de
responsabilité, pour votre bravoure, afin que je sois un homme bien
fait et utile pour le monde et pour la nation congolaise ;

A mon grand-père Prof. Justin MWAMBA ISIMBI

Nous remercions ainsi, très chaleureusement, tous nos enseignants


pour la formation qu’ils nous ont donnée ;

A mes sœurs, cousines et frères, cousins : Marlene MUNGOBO,


Toussaint MUNGOBO, Guillaume MUNGOBO, Cristelle MUNGOBO, Huguette
MUNGOBO, Niclette MUNGOBO, Dépit KABEMBA, Théo MWAKA, Séverin
KAMWANGA, Saleh KAMWANGA, Gassy KAVANYA ;

- A Tous mes amis et collègues : Jc LEHANI, Patrick NONDO, Olivier


SALUMU, Jonathan NGOA, Gloria KAMBA, Rachelle ANOUSKA ;

Nous voudrions toutefois remercier d'une façon particulière et


spéciale Monsieur le Chef de Travaux Samy BOFANDO BOLONGOLA,
l’assistant Merveille MAKILEMA, respectivement Directeur et co-
directeur qui ont bien assurer la direction de ce travail.

Que ceux dont les noms ne sont pas cités ici par faute d'espace
trouvent ici le sentiment de notre profonde gratitude et de
remerciement ; puisse Dieu vous bénir et vous rendre au centuple ce
que vous avez pu faire pour nous !
4

INTRODUCTION GENERALE

Il ne fait désormais plus aucun doute que l’informatique est la


révolution la plus importante et la plus innovante qui marqua la vie
de l’humanité moderne. Ses applications et ses méthodes de
conception et de développement ont vu l’avènement de technologies
quotidiennement utilisées, comme l’apparition d’internet qui est
devenue un outil indispensable pour le fonctionnement des
entreprises à travers le monde, car il a accru les chances de
communication à travers ces pages appelées page web.
C'est dans cette perspective d'idée que nous essayons de faire
une approche présentative du sujet qui est l'objet d'un travail
scientifique élaboré et réalisé en vue de faire montrer des
capacités et connaissances acquises à l'Institut supérieur
d’Informatique, Programmation et Analyse (ISIPA/Kinshasa).
Notre étude portera sur le sujet intitulé :  « CONCEPTION ET
REALISATION D'UNE APPLICATION WEB DE VALVE EN LIGNE ET FORUM AU SEIN
D’UN ETABLISSEMENT UNIVERSITAIRE CAS DE L’ISIPA ».

1. PROBLÉMATIQUE
La problématique c’est le problème à résoudre par procédé
scientifique. Comme substantif, problématique désigne l’ensemble des
questions posées dans un domaine de la science, en vue d’une
recherche des solutions.1
Vue la situation que traverse le monde pendant cette période de
la crise sanitaire et nous oblige la distanciation sociale, la
communication devient de plus en plus difficile surtout au moment de
confinement, congés, vacances.
Avec les nouvelles technologies de la communication permettent
d'établir une relation plus étroite entre les étudiants et
l’institut.
Cependant, les questions suivantes relatives aux enjeux
communicationnels de l’Institut.
- Comment les étudiant de l'Institut supérieur d’Informatique,
Programmation et Analyse peuvent-ils être informé et consultés
les informations relatives à la faculté en temps réel ?
- Comment informé les étudiant pendant la période de confinement,
congés ou vacances ?

2. HYPOTHÈSE
L’hypothèse c’est une série de réponses supposés ou provisoires
mais vraisemblable au regard des questions soulevées par la
problématique.2
L’innovation et la solution serait de concevoir, développée et
réalisé une application web qui joue le rôle de valve électronique

1
KALONDA, R, Méthode de recherche scientifique, ISIPA-kin,2019-2020,
2
KALONDA, R, Méthode de recherche scientifique, ISIPA-kin,2019-2020, inédit
5
pour y remédier aux différents problèmes qui se posent lors de la
consultation de communiqué.

3. CHOIX ET INTÉRÊT DU SUJET

3.1. Choix du sujet


Choix du sujet Le choix du sujet est une étape qui détermine
les motivations qui ont poussé le chercheur à choisir son sujet.3
Nous nous sommes dit qu'avec notre application web la consultation
des informations serait plus facile aux étudiants, par tout ou il se
trouve.

3.2 Intérêt du sujet

Aujourd'hui les entreprises recourent aux nouvelles


technologies de l'information et de la communication (NTIC), car les
résultats qu'elles produisent sont sans contestes optimaux et
efficaces.

Vu que l’ISIPA utilise un système de valve traditionnel de valve ;

Pour éradiquer la dépendance aux valves, aux papiers


duplicateurs et à la colle au sien de l’ISIPA.

Sur ce un système de valve électronique serait de grand aide à


l’institut supérieur d’informatique, programmation et analyse.

4. METHODE ET TECHNIQUE UTILISÉ

4.1. Méthode

Une méthode est un procédure intellectuel suivie par le


chercheur pour atteindre l’objectif qu’il s’est assigné.4

Pour arriver au but de notre d’étude, les méthodes qui nous ont
aidés sont :

 Méthode structuro-fonctionnelle

La méthode structuro-fonctionnelle est une méthode basée sur la


notion des structures de l’entreprisse

Cette méthode nous a permis de comprendre la structure de l’Institut


Supérieur d’Informatique, Programmation et Analyse enfin de bien
procéder à notre enquête et à la récolte des données.

3
https://www.commentcamarche.net
4
MARRON, HT, Cité par KAMENA, C., Démarche d’informatisation pour la publication en ligne des résultats des
étudiants à l’ISIPA, TFC, ISIPA/2017-2018.
6
 Méthode historique

La méthode historique est une méthode qui a pour but d’explique les
époques, les faits des événements passés et de leur enchaînement
pour aboutir à une vérité des faits et ce pour l’utilisation
systématique et la critique des documents.

4.2 Technique

La technique est un instrument, une arme ou un outil dont se servent


les chercheurs en vue de récolter les données souhaitées sur le
terrain.

 Technique de documentaire

Elle nous a permis de prendre connaissance de notre sujet grâce à


la documentation ayant trait à notre sujet.

 La Technique d'Interview

Elle nous a permis de poser des questions concernant le scénario du


système et d'échanger avec des personnes du domaine dont la
contribution nous a été utile.

5. DELIMITATION DU SUJET

Il est possible de mener les investigations sur une vaste


étendue ou à un long temps. C’est pour ce fait, nous avons jugé bon
de délimité notre champ d’étude, ainsi que le temps ou la durée de
l’investigation concernant notre sujet.

 Dans le temps

Dans le temps, nos investigations partent d’une période


allant de janvier 2021 à septembre 2021.

 Dans l’espace

Dans l’espace, notre champ d’investigation consiste à


concevoir et réaliser une application de valve en ligne et
forum au sein de l’Institut Supérieur d’Informatique,
Programmation et Analyse (ISIPA).

6 SUBDIVISION DU TRAVAIL

Pour une meilleure présentation et constitution de notre travail,


hormis l’introduction général et la conclusion nous avons subdivisé
notre travail en quatre chapitre
 CADRE THEORIQUE
 ETUDE PREALABLE
 ANALYSE ET CONCEPTION DU SYSTEME
7
 RÉALISATION

7 Difficultés rencontré

Notre étude a été menée au sein de l’ISIPA, les difficultés n’ont


pas été nombreuse étant donné que nous sommes nous-même étudiants
dudit Institut et que les responsables ont disposé de leur temps
pour nous aider et nous ont fourni les informations nécessaires en
rapport avec notre sujet.
8

CHAPITRE I CADRE THEORIQUE

Introduction
Le développement des applications web présente certaines
particularités, au niveau technique et ergonomique. Cette
spécificité nous oblige, au moment de la conception, à préconiser
des méthodes de conception et des méthodes de travail dédiées à ce
genre d’applications.
Ce chapitre est composé d’une section consacrée pour définir
quelques généralités sur les sur la programmation web et le Réseaux
informatique ;

I.1. Généralité sur la programmation


La programmation dans le domaine informatique est l'ensemble des
activités qui permettent l'écriture des programmes informatiques.
C'est une étape importante de la conception de
logiciel (Application).
Pour écrire le résultat de cette activité, on utilise un langage de
programmation.
La programmation représente usuellement le codage, c’est-à-dire la
rédaction du code source d'un logiciel. On utilise plutôt le terme
développement pour dénoter l'ensemble des activités lié à la
création d'un logiciel.

I.1.2 Algorithme


Est une démarche, une suite d’instructions pour résoudre un
problème.
 Une méthode systématique définit étape par étape et permettant
de résoudre à coup sûr et en un nombre fini d’étapes une
certaine classe de problèmes ou de répondre à une certaine
classe de questions.
 Un algorithme est une méthode générale pour résoudre un type de
problèmes. Il est dit correct lorsque, pour chaque instance du
problème, il se termine en produisant la bonne sortie, c'est-à-
dire qu'il résout le problème posé.5
L'efficacité d'un algorithme est mesurée notamment par :
 Sa durée de calcul,
 sa consommation de mémoire vive (en partant du principe que
chaque instruction a un temps d'exécution constant),
 la précision des résultats obtenus (par exemple avec
l'utilisation de méthodes probabilistes).

5
https://www.Wikipedia .org
9
Les ordinateurs sur lesquels s'exécutent ces algorithmes ne sont pas
infiniment rapides, car le temps de machine reste une ressource
limitée, malgré une augmentation constante des performances des
ordinateurs. Un algorithme sera donc dit performant s'il utilise
avec parcimonie les ressources dont il dispose, c'est-à-dire le
temps CPU, la mémoire vive et (aspect objet de recherches récentes)
la consommation électrique. L’analyse de la complexité algorithmique
permet de prédire l'évolution en temps calcul nécessaire pour amener
un algorithme à son terme, en fonction de la quantité de données à
traiter.

I.2 Programmation web


On appelle « Web » (nom anglais signifiant « toile »), contraction
de « World Wide Web » (d'où l'acronyme www), • une des possibilités
offertes par le réseau Internet de naviguer entre des documents
reliés par des liens hypertextes.
La programmation web est la programmation informatique qui permet
d'éditer des sites web. Elle permet la création d'applications,
destinées à être déployées sur Internet ou en Intranet. Ces
applications web sont constituées de pages web pouvant prendre
différentes formes, telles que :6
 pages « statiques » : son contenu n'est pas influencé par
l'internaute qui la demande et évolue avec une intervention
manuelle sur son code source.
 pages «dynamiques» : son contenu évolue sans que le code du
site web ne soit modifié manuellement, mais par l'interaction
des utilisateurs, par génération automatique de pages ou par du
calcul. C'est le cas de la très large majorité des sites web
depuis le début des années 2000.
 Pour un internaute qui fait appel à une URL, la page web
correspondante, qu'elle soit statique ou dynamique, consiste en
du code «côté client» (HTML, CSS, JavaScript, ...) qui est
interprété par son navigateur (Google Chrome, Firefox, ...)
produisant une interface utilisateur. Ce code, qui est renvoyé
par un serveur web, peut ou non avoir été généré par du calcul
« côté serveur », via des langages de programmation
particuliers, pouvant faire appel à des bases de données, des
API...
 Sur Internet les documents sont ainsi repérés par une adresse
unique, appelée URL, permettant de localiser une ressource sur
n'importe quel serveur du réseau internet
 URL vient de l'abréviation anglaise U.R.L : Uniform Resource
Locator, qui signifie « localisateur uniforme de ressource ».

6
HYANGANGA, B., Programmation Web, ISIPA-kin,2020-2021.
10

L’URL désigne en fait l'adresse Internet d'un fichier, d'une
image, ou tout autre élément et désigne aussi souvent le nom de
domaine d'un site.
Il existe différentes technologies et différents langages permettant
de construire des sites web par l'intermédiaire de serveurs web, que
l'on peut donc classer selon deux principes : des langages de
programmation côté client, ou côté serveur. Cette distinction est
faite pour séparer les langages « côté serveur » dont le code est
exécuté sur le serveur web avant d'arriver sur le navigateur de
l'utilisateur, des langages « côté client » dont l'exécution ne
nécessite pas de calcul sur le serveur web mais, seulement après le
téléchargement de la page, une interprétation par le navigateur de
l'utilisateur.

I.2.3 Programmation web côté client


La programmation "côté client" (ou développement web frontal)
consiste à produire du code (HTML, CSS, JavaScript, ...) qui sera
interprété par un navigateur web (ou une fenêtre, pour les logiciels
de bureau ou applications mobiles) et produira un rendu visuel : une
interface utilisateur (UI), et dont certains éléments permettront
une navigation, des liens, avec les autres pages.7

I.2.4 Programmation web côté Serveur


Lorsqu'un visiteur demande (ou requête) le chargement d'une URL sur
son navigateur, un appel (le plus souvent via HTTP ou HTTPS) est
effectué sur le serveur web qui héberge le site correspondant. Le
serveur web va ensuite identifier le ou les scripts (écrits dans un
langage « côté serveur ») correspondant à cette URL, et demander
leur exécution. L'exécution va alors résulter en un contenu HTML,
qui va ensuite être expédié en réponse au visiteur, lisible par son
navigateur.
La programmation "côté serveur" consiste donc à produire du code
dont l'exécution, du calcul et de la récupération de données
externes (bases de données, API, ...), va résulter en un contenu qui
sera envoyé au client. Ce contenu peut être du code "côté client".8
Différents langages et Technologies
 JavaScript
Il est possible de mettre en place un serveur web en utilisant le
programme Node.js, exposant des URL, via notamment Express.js, à un
projet de code développé en JavaScript.
 PHP
PHP (PHP : Hypertext Preprocessor) est un langage de script
interprété côté serveur. Le code PHP est lu par le serveur et
interprété pour produire une page HTML (ou d'autres types de fichier
comme des images ou des documents PDF) à chaque fois que la page
sera demandée. Ce langage a été créé initialement dans le cadre des
7
https://Wikipedia.org
8
idem
11
logiciels Open Source. De nombreux développeurs ont ensuite profité
de l'Open Source pour développer de nombreux modules prêts à l'usage
et paramétrables à volonté.
Les modules serveurs de PHP sont implémentés sur les serveurs Apache
et Unix mais PHP peut être implémenté sur d'autres plates-formes via
des CGI.
La syntaxe, relativement simple, part d'une base de C.
Framework notables : Symfony, Laravel

I.2.5 Langages pour pages Web dynamiques


Ce type de langage est utilisé pour une plus grande interaction
entre un client et un serveur.
Du côté du serveur Web, cela permet de produire des pages dont le
contenu est généré à chaque affichage. Ces langages sont par
ailleurs souvent couplés avec un langage pour communiquer avec des
bases de données (exemples : PHP, LiveCode).
Côté client (en général le navigateur web), ces langages offrent la
possibilité de réagir à certaines actions de l'utilisateur sans
avoir à questionner le serveur. Par exemple, le JavaScript d'une
page Web peut réagir aux saisies de l'utilisateur dans un formulaire
(et vérifier le format des données).
Certains langages permettent de développer à la fois les aspects
client et serveur. C'est le cas d'Ocsigen, de Hop, de Dart ou bien
encore du Server-Side JavaScript9

I.3. Base de données


Chacun de ces langages, pour permettre de construire des pages dont
le contenu et les données sont construits dynamiquement en fonction
de l'usage des utilisateurs ou d'autres paramètres externes, peut
faire appel à une ou plusieurs bases de données.
Il en existe de nombreuses sortes : dBase, filePro,
Firebird/InterBase, FrontBase, IBM DB2, Cloudscape, Informix,
Ingres, EDBC, Enterprise Access, Mssql, MySQL, PostgreSQL, SQLite,
SQLite3, SQLSRV, Sybase.10

I.3. LES RESAUX INFORMATIQUE

I.3.1 DEFINITIN
Le terme générique « réseau » définit un ensemble d'entités (objets,
personnes, etc.) interconnectées les unes avec les autres.
Un réseau permet ainsi de faire circuler des éléments matériels ou
immatériels entre chacune de ces entités selon des règles bien
définies.11
 Réseaux informatique

9
HYANGANGA, B., Programmation Web, ISIPA-kin,2020-2021.
10
Idem
11
https://www.techno-science
12
Un réseau informatique est l’interconnexion d’au moins deux ou
plusieurs ordinateurs en vue d’échanger, de partager des données,
des ressources ou des informations. En d’autre terme c’est une
infrastructure de communication reliant des équipements informatique
(ordinateur, concentrateur, commutateur, routeur, imprimante…)
permettant de partager des ressources communes. Il est caractérisé
par un aspect physique (câble véhiculant des signaux électriques) et
un aspect logique (les logiciels qui réalisent le protocole).

I.3.2 Internet
Internet est un réseau informatique mondial accessible au public. Il
s'agit d'un réseau de réseaux, à commutation de paquets, sans centre
névralgique, composé de millions de réseaux aussi bien publics que
privés, universitaires, commerciaux et gouvernementaux, eux-mêmes
regroupés en réseaux autonomes ; il en existe plus de 91 000 en
20191. L'information est transmise via Internet grâce à un ensemble
standardisé de protocoles de transfert de données, qui permet
des applications variées comme le courrier électronique, le World
Wide Web, la messagerie instantanée, le partage de fichiers en pair-
à-pair, le streaming, le podcasting, la téléconférence.12

I.3.3 Un site web


Un site web est composée d’un ensemble de documents structures,
nommes pages web, stock ́ es(hébergés) sur un ordinateur (serveur)
connecte au réseau mondial 13

. Il existe deux types de sites web :

I.3.3.1 Un site statique


Constitué des pages web avec du contenu fixe. Chaque page est codée
en HTML (HyperText Markup Language) et affiche les mêmes
informations à chaque visiteur. La modification de ces pages se fait
par une intervention de l’administrateur du site web.14

I.3.3.2 Un site dynamique


Les pages du site qui le compose peuvent être modifiables par les
visiteurs. De plus, entre deux visites sur un même site, le contenu
de la page peut être diffèrent sans action de l’administrateur du
site Internet. Le serveur qui fait fonctionner le site utilise une
technologie de Scripting (comme PHP : HyperText Preprocessor) ainsi
qu’une base de données comme MySQL (My Structured Query Language).15

I.3.4 Une application web


Une application web est un ensemble de pages qui interagissent avec
les utilisateurs, les unes avec les autres, ainsi qu’avec les

12
HYANGANGA, B., Programmation Web, ISIPA-kin,2020-2021
13
Idem
14
Idem
15
idem
13
différentes ressources d’un serveur web, notamment les bases de
données.16
L’architecture d’une application web contient un serveur
d’application qui rend possible le traitement d’une logique et d’un
état applicatif.
́
Tandis que l’architecture d’un site web contient trois composants
principaux :
– Un serveur web.
– Une connexion réseau.
– Des navigateurs clients.
En d’autres termes une application web sert à manipuler
l’information et elle est soumise à des contrôles d’accès et de
rôles, et un site web sert à exposer l’information.

I.3.4.1 L’architecture des applications web


Une architecture est un modèle générique et conceptuel qui se
rapporte à un sujet et qui représente la fonctionnalité, la
structure, le positionnement, l’interrelation des différents types
d’éléments (hardware, logiciels, infrastructure) qui la composent.
En règle g générale, une application est d ́ découpée en 3 niveaux
(couches) d’abstraction : La couche présentation : c’est la partie
de l’application visible par les utilisateurs (nous parlerons
d’interface utilisateur). Dans notre cas, cette couche est un
navigateur web, qui se présente sous forme de pages HTML, composée
de formulaire et de bouton.
La couche métier : correspond à la partie fonctionnelle de
l’application, celle qui implémente la logique, et qui décrit les
opérations que l’application opère sur les données, en fonctionnes
requetés d’un utilisateur effectuées au travers de la couche
présentation.
La couche accès aux données : elle consiste en la partie gérant
l’accès à la base de données du système. Il existe différentes
architectures pour une application web : – Architecture
1-tiers– Architecture
2-tiers– Architecture
3-tiers– Architecture
n-tiers.
Dans notre application nous avons utilisé une architecture à 3-tiers
qui est illustrée dans la figure (1.1) sise ci–dessous :17

Tier 1 Tier 2 Tier 3

16
HYANGANGA, B., Programmation Web, ISIPA-kin,2020-2021
17
https:// Wikipedia.org

Client Application
Data Base
14

Figure (1.1) Architecture 3 Tiers d’une application web

I.3.4.2 L’application Client/serveur


Une application web est dite basée sur un modelé Client - Serveur si
la base de données retrouve sur un serveur qui ne sert qu’à ça, et
pour interagir avec cette base de données, il faut utiliser un
logiciel ”client” qui va interroger le serveur et transmettre la
réponse que le serveur lui aura donnée.
Le serveur peut être installé sur une machine différente du client.
Par conséquent, lorsque nous installons un SGBD (système de gestion
de base des données), nous installons en réalité ́
e deux choses :
– le serveur
– le client
Chaque requête (insertion/modification/lecture de données) est faite
par l’intermédiaire du client. Nous pouvons donc avoir besoin d’un
langage pour discuter avec le client, pour lui donner les requetés
que nous souhaitons effectuer.
Dans le cas de notre application nous avons MySQL comme système de
gestion des bases de données, et le SQL (Structured Query Language)
comme langage de système de gestion des bases de données.

I.3.4.3 Le fonctionnement d’une application web


Lorsqu’un serveur web reçoit une requête de page web statique, il
transmet simplement cette page au navigateur requérant.
En revanche, lorsque le serveur web reçoit une requête de page
dynamique, il transmet cette page à une extension logicielle
spéciale chargée d’achever la page. Ce logiciel spécial est appel ́e
serveur d’application.
Le serveur d’application lit le code de la page, termine cette page
en fonction des instructions figurantes dans le code, puis en retire
le code.
Il en résulte une page statique que le serveur d’application renvoie
au serveur web, lequel transmet alors cette page au navigateur
requérante navigateur reçoit uniquement du code HTML pur lorsque la
page lui est transmise.
Un serveur d’application nous permet de travailler avec des
ressources coté serveur telles que les bases de données.
15
Une page dynamique peut, par exemple, ordonner au serveur
d’application d’extraire des données de la base de données et de les
insérer dans le code HTML de la page.
L’instruction d’extraction des données de la base est nommée requête
de base de données.
Une requête est composée de critères de recherches rédiges dans un
langage de base de données appel ́e SQL. La requête SQL est rédigée
dans les scripts ou les balises coté serveur de la page.
Toutes ces actions sont résumées dans le schéma présenté dans la
figure (1.2) sise ci–dessous

Etape 7
Etape 1 Le serveur web
Le navigateur sollicite renvoie la page
un page dynamique achevée au
Navigateur navigateur

Demande Réponse

Etape 2
Le serveur web localise la <HTML> <HTML> Etape 6
page et transmet au Serveur web <p> Le serveur
<code>
serveur d’application </HTML> d’application insère les
</HTML>
données dans la page,
Etape 3 puis transmet la page
Le serveur d’application achevée au serveur
analyse la page à la web
recherche d’instruction et Serveur d’application
la termine Etape 5
Le SGBD renvoie un
Etape 4 jeu d’enregistrement
Le serveur d’application au serveur
envoie une requête au Data Base d’application
SGBD

Figure1.2. Fonctionnement d’une application web.

Généralement et après la réalisation et l’implémentation d’une


application ; une dernière étape reste à accomplir c’est
l’hébergement de l’application afin qu’elle devienne accessible et
manipulable par les utilisateurs.

I.2.5 Le serveur web


Un serveur web est un logiciel qui fournit des pages web en réponse
à des requêtes de navigateurs web.
16
Une requête de page est générée lors qu’un utilisateur clique sur un
lien d’une page web ou saisit une URL (localisateur uniforme de
ressources) dans le champ adresse du navigateur.18

I.3.6 L’hébergement d’une application web


Définition L’hébergement est un service visant à rendre un site ou
une application web accessible sur Internet.
Afin que les pages soient visibles par tout le monde, il faut
qu’elles soient stockées sur un ordinateur connecté en permanence à
l’internet (serveur).
Un hébergeur est comme une société spécialisée dans l’hébergement de
sites web sur des serveurs, sa principale activité sur internet
consiste à installer des serveurs, à les sécuriser, à les tenir à
jour en installant les mises à jour de sécurité pour éviter les
attaques malveillantes et à les réparer en cas de panne.
Il existe plusieurs types d’hébergements dont :
1. Hébergement gratuit : ce type d’hébergement offre un service
basique, avec un espace de stockage assez limité, avec une fiabilité
qui n’est pas toujours optimale.
2. Hébergement payant : ce type d’hébergement propose un service de
qualité, avec de bonnes capacités de stockage ainsi qu’une grande
fiabilité.
Le support sera également plus disponible et plus réactif en cas de
problème et aidera avec des réponses personnalisées.
Dans la partie suivante nous parlerons des langages utilisés pour la
création des applications.19

I.3.7 Les langages utilisés pour la création des applications web


Le développement d’une application web nécessite la connaissance des
différents langages utilisés dans les technologies web : HTML pour
la présentation des pages, CSS (Cascading Style Sheets) pour la
charte graphique, JavaScript, Java ou ActionScript pour les
automatismes exécutés par le client, ainsi qu’un langage tel que
Java, le PHP et d’autre.

I.3.8 FORUM
Service permettant discussions et échanges sur un thème donné :
chaque utilisateur peut lire à tout moment les interventions de tous
les autres et apporter sa propre contribution sous forme d'articles.

18
https://www.Wikipedia.org
19
HYANGANGA, B., Programmation Web, ISIPA-kin,2020-2021
17

CHAPITRE II ETUDE PREALABLE

II.1 PRESENTATION DE L’ISIPA


II.1.1 Historique de l’ISIPA
Fondé en 1975 par l’ingénieur martin EKANDA ONYANGUNGA revenant
des études de Bruxelles, l’institut supérieur d’informatique
programmation et analyse I.S.I.P.A a commencé ses activités au sein
de l’académie des beaux-arts dans la commune de la Gombe avec 6
étudiants.
Se sont joint, deux professeurs expatriés du département de
finance de l’époque, dont monsieur MARECHAL licencié en mathématique
et analyse informatique et monsieur LENZI analyste programmeur,
conseiller aux magasins généraux de l’Etat, puis monsieur Drapeau,
Ingénieur en Système et professeur à l’Ecole Nationale de Finances.
En 1976, le niveau d’analyse sera ajouté. Il y a également
l’incorporation des informaticiens congolais ci-après :
- Monsieur KABASELE KAMPANYA programmeur à l’époque
aujourd’hui professeur à l’école nationale de finances.
- Monsieur DJELA licencié en science économique ingénieur
concepteur en informaticien, actuellement docteur et
professeur à l’Institut Supérieur de Commerce.
- Monsieur KATAMBA, informaticien à la Banque Congolaise de
Commerce Extérieur (BCCE) en 1978. +
En 1980, l’I.S.I.P. A va s’installer à l’institut de la Gombe.
En 1981, l’I.S.I.P. A est agréé à titre défini par le conseil
permanent de l’informatique de la république sous le numéro
SG/COPIE/008/081 du 12 octobre 1975 et sera confirmé par la décision
N° SG/COPIE/008/081. La même année, le niveau de conception verra
le jour puis la licence en informatique appliquée en 1990.20
En 1991, après contrôle et inspection, le ministre de
l’enseignement supérieur et universitaire, par son arrêté n°
ESU/CABMIN/0229/91 du septembre 1991, autorisera le fonctionnement
de l’I.S.I.P. A pour l’agréer par l’arrêté n° ESU/CABMIN/0400/93 du
septembre 1993.
Les besoins en comptables informaticiens vont amener
l’I.S.I.P.A à ouvrir l’option gestion financière. L’application de
l’ordinateur dans le secteur douanes notamment à L’OFIDA (l’actuelle
DGDA) a amené à la création de l’option douane et accise. Plus tard,

20
www.isipa.cd
18
la technique de maintenance sera ajoutée afin que les deux aspects
de l’informatique soient présents dans les enseignements dispensés.
A ce jour, l’I.S.I.P.A est agrée définitivement par décret numéro
06/01/2006 du 12/06/2006 de son excellence monsieur le président de
la république de telle sorte que les diplômes y obtenus aient la
valeur légale.

II.1.2 Objectif
L’objectif poursuivi par L’ISIPA se résume essentiellement par
la formation des cadres universitaires en informatique, en sciences
commerciales et financières toute en contribuant à :

- La formation et à la recherche en informatique et en science


commerciales et financières ;
- La construction d’une banque des données sur toutes les
informations jugées utiles en vue d’une meilleure gestion des
entreprises tant publiques que privées ;
- L’accroissement des comportements humains, techniques et
scientifiques pour le développement national en organisant de
sessions de formation de courte voire longue durée au bénéfice
des agents et cadres du secteur privé, ainsi que de toutes les
couches sociales.

II.1.3 Situation géographique


Au moment de l’élaboration de ce travail, L’I.S.I.P.A compté 4
sites dont 3 à Kinshasa et 1 au Bas-Congo.
A Kinshasa, l’ISIPA se situe au N° 238 de l’avenue KITEGA dans la
commune de LINGWALA, sur l’avenue SHAUMBA (ex. prince de liège) N°
1788 dans la commune de la Gombe et enfin sur l’avenu KIKWIT N° 214
dans la commune de LINGWALA. Au Bas-Congo l’I.S.I.P.A se situe à
Matadi sur l’avenue Martin Ekanda N° 5.
19

II.1.4 ORGANIGRAMME

PDG

COMITE DE GESTION

DIRECTION GENERALE

ADMINISTRATION DU BUDJET
SECRETAIRE GENERAL ACADEMIQUE SECRETAIRE GENERAL ADMINISTRATIF

COMPATIBILITE
SECRETARIAT APPARITORAT
ACADEMIQUE
CAISSE PATRIMOINE SERVICES GENERAUX

SECTION SECTION SCIENCE


SCIENCES INFORMATIQUES COMMERCIALE ET FINANCE

DEPARTEMENTTECHNI DEPARTEMENT DEPARTEMENT DOUANE DEPARTEMENT


QUE DE INFORMATIQUE DE ET ASSISES GESTION FINANCIERE
MAINTENANCE GESTION
20

II.1.5 Description des taches


Dans cette partie nous allons voir comment les fonctions de
travail sont distribuées. C’est ici que nous allons donner la
hiérarchie de L’ISIPA.

II.1.5.1 Le président directeur général


Le président directeur général est le premier responsable de
l’institut, il nomme le directeur général, les secrétaires généraux,
l’administration du budget, etc.…
Il est le pouvoir organisateur.

II.1.5.2 Le comité de gestion


Le comité de gestion est l’organe suprême il s’occupe de la
conception de la politique et de l’orientation de L’I.S.I.P.A., il
se réunit ordinairement une fois par année et chaque fois que la
nécessité se présente, en extraordinaire. Il est composé de
principaux responsables des secteurs d’activités et préside par le
promoteur de l’institut.

II.1.5.3 Le directeur général


Le directeur général est le responsable de la gestion
quotidienne de l’institut. A ce titre, il supervise toute, les
activités et en fait rapport au président directeur général et
ministère ayant l’enseignement supérieur et universitaire dans ses
attributions. Il engage l’institut dans ses actes.

II.1.5.4 Le secrétaire général académique


Le secrétaire général académique est le patron du secteur
académique. Il organise les enseignements, supervise les
inscriptions.

II.1.5.5 Secrétaire General administratif


Le secrétaire général administratif est membre du comité de
gestion d’un établissement. Il supervise et coordonne les activités
des services relevant de son ressort, il s’établit, dans les
conditions prévues par le règlement organique.

II.1.5.6La section informatique


La section informatique gère les départements :
- Technique de maintenance
- Communication numérique
- Informatique de gestion
A ce titre, il contrôle les enseignements journaliers, calcule
le total d’heures prestées mensuellement, suit l’évolution des
cours, proposent des horaires, fait des suggestions pour la bonne
marche de ses activés et exécute toute autre tâche lui confiée.
21
II.1.5.7 Département de technique maintenance et communication numérique
ou (informatique industrielle)
Le département technique de maintenance qui assure une
formation pratique et théorique permettant d’aboutir à la
réalisation des tâches de maintenance et différents projets
informatique et électronique réalisable.

II.1.5.8 Département informatique de gestion

L’informatique de gestion assure une formation théorique et


pratique aboutissant à la conception des logiciels de gestion grâce
aux différents langages.

II.1.5.9 La section science commerciale


Il y a aussi deux départements repartis de la sorte :
- Département Douane et Accise, et
- Département Gestion Financière
II.1.5.10 Département douane et accises
Permettre aux étudiants de mieux maitriser les concepts de
douane et accise dans les transactions commerciales.

II.1.5.11 Département Gestion financière

Mettant un accent particulier sur les disciplines à caractère


comptables et financier.

II.1.5.12 Le secrétariat

Le secrétariat s’occupe de la gestion du courrier, de


l’établissement des documents académiques et de la rédaction des
documents administratifs.

II.1.5.13 L’administration du budget


L’administrateur du budget supervise toutes les activités
financières dont il est le patron.

II.1.5.14 Comptabilité
La comptabilité, conformément aux instructions légales et à
celles de l’institut, s’occupe de toutes les opérations financières,
tient le journal et élabore le rapport des finances. Elle contrôle
et supervise la caisse.

II.1.6 Présentation du système informatique existant


22
II.1.6.1 Recensement des équipements informatiques

A. L’infrastructure réseau du site de Kikwit dispose des matériels


ci-dessous :
Matériels Marque Caractéristique Quantité

HDD : 500 Go
Ordinateur fixe HP CPU : I3 3.66 4
GHz
RAM : 4Go
Imprimante HP LaserJet Laser 4
P1102 CPU:266Mhz

Routeur Cisco 1840 4 ports 1

Routeur Mikrotik série 2.4 Ghz+54 Mbps 1


951B 4 ports Lan et 1
Wan
Téléphone IP ATCOM PoE support IEEE 2
802.3af

Serveur HP CPU :3.6Ghz i7 1
RAM :16 Gb
HDD :2To

Nano station Ubiquity M5 150 Mbps 1

A. L’infrastructure réseau du site de kitega dispose des matériels


ci-dessous :

Matériels Marque Caractéristiques Quantité


Ordinateur fixe HP HDD : 500 Go 5
CPU : 2.66 GHz i3
RAM : 4Go

Imprimante HP LaserJet Laser 3


P1102 CPU : 266Mhz
Switch Amigo 32 ports 1
FastEthernet
LINK-sys 24 GigaEthernet 1
Routeur Mercury 8 ports LAN et 1 1
port WAN
23
IPBX Planet CPU : 1.5Ghz 1
RAM : 2Gb
HDD : 500Go
Slot:2 de 4
canaux
Téléphone IP ATCOM PoE support IEEE 5
802.3af
Nano station Ubiquity M5 150 Mbps 1

C. L’infrastructure réseau du site de Shaumba dispose des matériels


ci-dessous :
Matériels Marque Caractéristique Quantité
HP HDD : 500 Go
Ordinateur fixe CPU : 3.66 GHz i3 7
RAM : 4 Mo
Imprimante HP LaserJet Laser 3
P1102 CPU:266Mhz
Switch D-Link 16 ports 1
Switch Cisco 24 ports 1
Routeur Mikrotik série 2.4 Ghz+54 Mbps 1
951B

Téléphone IP ATCOM PoE support IEEE 2


802.3af

N.B : Nous n’avons cité que les matériels déployés dans


l’infrastructure réseau car beaucoup d’autres sont utilisés lors des
pratiques aux différents laboratoires.

II.1.6.2 Schéma du réseau


a. Site de Kikwit
24

b. Site de Kitega

c. Site de Shaumba
25

II.1.6.3 Plan des vlan


Vlan ID Name
10 Kikwit
20 Kitega
30 Shaumba
26

II.2 Description de l’existant


Comme toute les institutions, l’Institut Supérieur d’Informatique,
Programmation et analyse possède sa manière de communiquer avec ses
étudiants.
Cette manière est divisé en deux étapes principales, la première
étape est d’afficher les communiqués par la voie de valve, passé
dans les auditoires pour annoncer les communiquer aux étudiants, la
deuxième étape consiste à appeler les chefs des promotions pour
leur donné les communiquer et les chefs de promotion vont ensuite
aller annoncer dans leur auditoire , le département appelle les
chefs de promotions par téléphone puis les chefs de promotion
envoie les communiqués dans le groupe WhatsApp ou Facebook .

II.3 CRITIQUE DE L’EXISTANT

L'objectif de la critique de l'existant est d'établir un


diagnostic précis sur le bon fonctionnement ou sur le
disfonctionnement du système actuel.

Dans le cas de notre sujet nous allons orienter notre critique à


la manière dont

La mise en place d’une application web qui joue le rôle de valve


électroniques.
Actuellement L’Institut Supérieur d’Informatique, Programmation et
Analyse utiliser un système de valve traditionnelle pour informer
ses étudiants.
L’année dernière nos aînés scientifiques ils ont eu du mal à
savoir la date et le jour pour défendre leurs mémoires suite à la
crise sanitaire lié à la pandémie Covid-19 et suite au système
traditionnelle d’affichages de communiqués sur la valve.

II.4 PROPOSITION ET CHOIX D'UNE SOLUTION

Le but de cette étape est de proposer une ou plusieurs solutions


capables de créer un système ou d'améliorer la qualité du système
existant.

Ainsi dans le cadre de notre étude, nous proposons deux solutions


qui permettraient d'améliorer le système existant.

 Solution informatique

Nous proposons une application web qui joue le rôle de valve


électronique pour la publication des informations de la faculté en
temps réel facilitant les étudiants de consulter les informations
27
qui concerne l’institut à n'importe quel endroit ou heure via
l'internet.

Cette application :

- Apporte à l’institut une nouvelle technologie(NTIC) ;

- Favorise une consultation des informations très simplifiée des


étudiants avec un système de recherche flexible ;

- Archive les communiqués et les autres informations avec une


sécurité accrue.

II.4.1 Choix d'une solution

Dans le cadre de la solution à choisir, nous portons notre choix sur


la solution informatique, car c'est elle qui va répondre à toutes
les problématiques, difficultés et aspects soulevés dans cette
étude.

Une fois la solution informatique est appliquée, il y aura comme


avantage :

- Circulation élargie des informations à travers le monde par le


canal du web ;

- Réduction de temps de publication grâce à l'internet.

Conclusion

Dans la première partie de ce chapitre, nous avons fait la


présentation générale de l’institut ainsi que ses objectifs ; Dans
la deuxième partie, nous nous sommes intéresse à analyser l'existant
afin de cerner les dysfonctionnements et les obsolescences les plus
frappantes du système actuel, en proposant des solutions par rapport
au critique du système actuel
28
CHAPITRE III. ANALYSE ET CONCEPTION DU SYSTEME

III.1. INTRODUCTION

La mise en place d'une solution informatique doit être


impérativement précédée par l'analyse et de conception, qui a pour
objectif de permettre la formalisation des étapes préliminaires du
développement afin de rendre cette solution plus fidèle aux besoins
du client.
Afin de bien contrôler le développement et la mise en place de
notre application, il faut suivre et respecter l’ordre des étapes et
cela se fait par le billet d’un processus de développement.

III.2. ANALYSE DU NOUVEAU SYSTEME

Afin de réaliser notre application, il faut pratiquer une


analyse informatique. Cette analyse consiste à comprendre et
modéliser le système d'information (SI) sur lequel nous travaillons.
Un système d'information regroupe toutes les informations d'un
domaine précis.
La méthode d'analyse MERISE est une méthode de conception et de
développement de système d'information. C'est cette méthode qui va
nous permettre de réaliser le MCD (modèle conceptuel des données :
diagramme entité-relation permettant de modéliser le système
d'information sans prendre en compte les détails liés à sa mise en
œuvre physique), et le MLD (modèle logique des données : qui est
issue du MCD et qui va permettre de prendre en compte la
structuration technique propre au stockage informatisé). Si le MCD
et le MLD sont très bien réalisés, la mise en œuvre physique de la
base de données sera très facile à implémenter.

III.2.1. MODELISATION DE LA BASE DE LA DONNEE


La modélisation c'est la représentation virtuelle de la réalité

RECENSEMENT DES ENTITES


- Entité : une entité est la représentation d’un élément matériel
ou immatériel ayant un rôle dans le système que l’on désire
décrire.
Nous avons recensé les entités suivantes :
- Etudiants
- Informations
- Promotions
- Catégories
29
- Questions
- Réponses
- Admin

CONCEPTION DE LA BASE DE DONNEES


Pour la conception de notre système, nous utilisons la méthode
Merise qui nous propose un processus de modélisation en trois étapes
principales lesquelles :

· Le niveau conceptuel ;

· Le niveau organisationnel ;

· Le niveau physique.

LE NIVEAU CONCEPTUEL DE DONNEE


Le niveau conceptuel de donnée représente le contenu de la base
interne
Conceptuel indépendant de toute considération informatique, il se
traduit en ce terme :
· Le MCD (le modèle conceptuel de donnée) ;
· Le MCT (le modèle conceptuel de traitement) ;

MODELE LOGIQUE DE DONNEES


30
ETUDIANTS INFOS
Promotions
Id_etu# Id_info
Titre Id_promo
Username Appartenir 1,n Promo
Nom Contenu 1,n
1,n 1,n Auteur
Prenom Consulter
Email Image
Password Date_creation
Role Statut
Date_creation Autorisation
profil Id_promo

1,n
Appartenir1 1,1

Poser 1,n

REPONSES ADMIN
QUESTIONS
Id_r
Id_q
CATEGORIES Id_q
Id_etu
Id_etu
Id_cat Id_cat
reponse
Nom sujet
question
Date_creation

1,n 1,1
Apparten 1,1 1,n
Apparten
ir ir
31

MODELE PHYSIQUE DE DONNEES

III.3. CHOIX DE L’ENVIRONNEMENT

Pour arriver à la réalisation de notre application, nous avons


utilisé le langage de programmation PHP dédié à la création des
applications web dynamiques.

Notre plateforme adoptée est WAMP xamp qui inclut tous les
outils nécessaires pour le test d'une application web dynamique en
local à savoir le serveur Apache, MySQL et PHPMyAdmin.

III.3.1. CHOIX DU LANGAGE

Quant au choix du langage, le langage PHP a fait l'objet du


développement de notre application.

III.3.2. CHOIX DU SYSTEME DE GESTION BASE DE DONNÉES


32

De nombreux SGBD sont actuellement disponible sur le marché,


mais notre choix est porté MySQL.
MySQL est une solution très courante en ce qui concerne
l'hébergement public de site Internet. MySql offre en effet une très
bonne intégration dans l'environnement PHP/Apache et une bonne
rapidité. Il est très stable et ceux même avec un grand nombre
d'enregistrements. Un des gros avantages est donc une grande
communauté d'utilisateurs, ce qui en facilite le support en cas de
problèmes. De plus, MySQL est gratuit, sauf pour certaines
utilisations.

III.3.3. Description des OUTILS ET LANGAGE UTILISES


Pour pouvoir bien réaliser notre application nous avons opté pour
quelque outils et langages que nous allons d´définir ci-dessous.

Présentation du langage
Le PHP : Hypertext Preprocessor, plus connu sous son sigle PHP, est
un langage de scripts libre 4 principalement utilisé pour produire
des pages Web dynamiques via un serveur HTTP, mais pouvant également
fonctionner comme n'importe quel langage interprété de façon locale,
en exécutant les programmes en ligne de commande. PHP est un langage
impératif disposant depuis la version 5 de fonctionnalités de modèle
objet complètes. En raison de la richesse de sa bibliothèque, on
désigne parfois PHP comme une plate-forme plus qu'un simple
langage.21
Historique
Le langage PHP fut créé en 1994 par Rasmus Lerdorf pour son site
web. C'était à l'origine une bibliothèque logicielle en Perl dont il
se servait pour conserver une trace des visiteurs qui venaient
consulter son CV. Au fur et à mesure qu'il ajoutait de nouvelles
fonctionnalités, Rasmus a transformé la bibliothèque en une
implémentation en langage C, capable de communiquer avec des bases
de données et de créer des applications dynamiques et simples pour
le Web. Rasmus décida alors en 1995 de publier son code, pour que
tout le monde puisse l'utiliser et en profiter. PHP s'appelait alors
PHP/FI (pour Personal Home Page Tools/Form Interpreter). En 1997,
deux étudiants, Andi Gutmans et Zeev Suraski, redéveloppèrent le
coeur de PHP/FI. Ce travail aboutit un an plus tard à la version 3
de PHP, devenu alors PHP : Hypertext Preprocessor. Peu de temps
après, Andi Gutmans et Zeev Suraski commencèrent la réécriture du
moteur interne de PHP. Ce fut ce nouveau moteur, appelé Zend Engine
- le mot Zend est la contraction de Zeev et Andi - qui servit de
base à la version 4 de PHP 6
21
https://Wikipedia.org/wiki/php
33
En 2002, PHP est utilisé par plus de 8 millions de sites Web à
travers le monde 7 et en 2007 par plus de 20 millions.
Un indicateur paradoxal de la popularité de PHP est le nombre de
failles de sécurité concernant des applications PHP et listées avec
un identifiant CVE sur la National Vulnerability Database, base de
données américaine. Ces failles représentent 12 % du total en 2003,
20 % en 2004, 28 % en 2005, 43 % en 2006, 36 % en 2007, 34,8 % en
2008, 29,9 % en 2009, 27,2 % en 2010. Plus d'un quart des
vulnérabilités répertoriées sur cette base concerne des applications
PHP, plus d'un tiers ces dernières années, et la plupart peuvent
être exploitées à distance. Ces vulnérabilités s'expliquent par de
mauvaises habitudes de programmation (souvent un défaut de
validation des entrées) alliées à des caractéristiques douteuses du
langage lui-même (par exemple register globals, maintenant
déconseillé).
La version actuelle est la version 5, sortie le 13 juillet 2004 11.
Elle utilise Zend Engine 2 et introduit un véritable modèle objet,
une gestion des erreurs fondée sur le modèle des exceptions, ainsi
que des fonctionnalités de gestion pour les entreprises. PHP 5
apporte beaucoup de nouveautés, telles que le support de SQLite, qui
est un système léger de gestion de bases de données embarqué, au
détriment de la bibliothèque cliente de MySQL, plus puissante mais
qui n'est désormais plus activée par défaut, ainsi que des moyens de
manipuler des fichiers et des structures XML basés sur libxml2 :
· une API simple nommée SimpleXML ;
· une API Document Object Model assez complète ;
· une interface XPath utilisant les objets DOM et SimpleXML ;
· intégration de libxslt pour les transformations XSLT via
l'extension XSL ;
· une bien meilleure gestion des objets par rapport à PHP 4, avec
des possibilités qui tendent à se rapprocher de celles de Java.
La dernière mise à jour est la 5.4.4 datant du 14 juin 2012 12.
La version 4.4.x n'est plus maintenue depuis le 31 décembre 2007 11,
13. Seuls les patchs de sécurité critiques ont encore été développés
jusqu'à la date du 8 août 2008 13.
La branche 5.2 n'est plus non plus supportée depuis le 16 décembre
2010 avec la version 5.2.16 et il est recommandé à tous les
utilisateurs de migrer vers la branche 5.3. Seules des corrections
de sécurité sont assurées pour les récalcitrants.
La prochaine version : PHP 9 est en développement.
Présentation du langage
Le langage PHP est utilisé principalement en tant que langage de
script côté serveur, ce qui veut dire que c'est le serveur (la
machine qui héberge la page Web en question) qui va interpréter le
code PHP et générer du code (constitué généralement d’XHTML ou
d’HTML, de CSS, et parfois de JavaScript) qui pourra être interprété
34
par un navigateur. PHP peut également générer d'autres formats en
rapport avec le Web, comme le WML, le SVG, le format PDF, ou encore
des images bitmap telles que JPEG, GIF ou PNG.
Il a été conçu pour permettre la création d'applications dynamiques,
le plus souvent développées pour le Web. PHP est très
majoritairement installé sur un serveur Apache, mais peut être
installé sur les autres principaux serveurs HTTP du marché, par
exemple IIS. Ce couplage permet de récupérer des informations issues
d'une base de données, d'un système de fichiers (contenu de fichiers
et de l'arborescence) ou plus simplement des données envoyées par le
navigateur afin d'être interprétées ou stockées pour une utilisation
ultérieure.
C'est un langage peu typé et souple et donc facile à apprendre par
un débutant mais, de ce fait, des failles de sécurité peuvent
rapidement apparaître dans les applications. Pragmatique, PHP ne
s'encombre pas de théorie et a tendance à choisir le chemin le plus
direct. Néanmoins, le nom des fonctions (ainsi que le passage des
arguments) ne respecte pas toujours une logique uniforme, ce qui
peut être préjudiciable à l'apprentissage.
Son utilisation commence avec le traitement des formulaires puis par
l'accès aux bases de données. L'accès aux bases de données est aisé
une fois l'installation des modules correspondant effectuée sur le
serveur. La force la plus évidente de ce langage est qu'il a permis
au fil du temps la réalisation aisée de problèmes autrefois
compliqués et est devenu par conséquent un composant incontournable
des offres d'hébergements.
Il est multiplateforme : autant sur Linux qu'avec Windows il permet
aisément de reconduire le même code sur un environnement à peu près
semblable (prendre en compte les règles d'arborescences de
répertoires qui peuvent changer).
Libre, gratuit, simple d'utilisation et d'installation, ce langage
nécessite comme tout langage de programmation une bonne
compréhension des principales fonctions usuelles ainsi qu'une
connaissance aiguë des problèmes de sécurité liés à ce langage.
La version 5.3 a introduit de nombreuses fonctionnalités : les
espaces de noms - un élément fondamental de l'élaboration
d’extensions, de bibliothèques et de Framework structurés, les
fonctions anonymes, les fermetures, etc.
La version 6 introduira en interne la bibliothèque ICU donnant au
langage la faculté de traiter Unicode de manière native.
HTML & CSS : HTML : est un langage dit de « marquage » (de «
structuration » ou de « balisage ») dont le rôle est de formaliser
l'écriture D’un document avec des balises de formatage. Les balises
permettent D’indiquer la façon dont doit être présenté le document
et les liens qu'il Établit avec d'autres documents.22
22
https://Wikipedia.org/wiki/html
35
CSS : feuille de style c'est un langage qui permet de gérer
L’apparence de la page web (agencement, positionnement, décoration,
couleur, taille du texte...).23
JavaScript
Le JavaScript est un langage de programmation de scripts
principalement employé dans les pages web interactive mais aussi
pour les serveurs. C'est un langage orienté objet à prototype,
c'est-à-dire que les bases du langage et ses principales interfaces
sont fournies par des objets qui ne sont pas des instances de
classes, mais qui sont chacun équipés de constructeurs permettant de
créer leurs propriétés, et notamment une propriété de prototype qui
permet d'en créer des objets héritiers personnalités.24
Vs code : Visual studio code est un éditeur de code extensible
développé par Microsoft.
En outre, les fonctions sont des objets de première classe.25
Wampserver : est une plateforme de développement Web
de type WAMP, permettant de faire fonctionner localement (sans se
Connecter à un serveur externe) des scripts PHP. Wampserver n'est
pas en soi un logiciel, mais un environnement comprenant deux
serveurs (Apache et MySQL), un interpréteur de script (PHP) ainsi
que phpMyAdmin pour l'administration Web des bases MySQL.26
MySQL : est une base de données relationnelle dont le principe est
d'enregistrer les informations dans des tables, qui représentent des
regroupements de données par sujets (table des étudiant, table des
questions, etc.). Les tables sont reliées entre elles par des
relations. Le langage SQL (acronyme de Structured Query Language)
est un langage universellement reconnu par MySql et les autres bases
de données et permettant d'interroger et de modifier le contenu
d'une base de données.27
PhpMyadmin
PhpMyAdmin est une interface conviviale qui permet de gérer très
facilement une base de données, sans nécessiter une connaissance
avancée des requêtes SQL. Le fait que l'interface soit développée en
PHP la rend parfaitement adaptée à l'utilisation conjointe d'une
base MySQL et d'un moteur de scripts PHP. Elle peut donc fonctionner
directement sur le serveur Web et être accessible par le biais d'un
simple navigateur, ce qui explique sa présence sur la plupart des
sites dynamiques distants (actuellement, PhpMyAdmin est le
gestionnaire de bases de données préconisé par la majorité des
hébergeurs proposant des serveurs qui prennent en charge MySQL/PHP).

23
https://Wikipedia.org/wiki/css
24
https://Wikipedia.org/wiki/Javascript
25
https://Wikipedia.org/wiki/vscode
26
https://Wikipedia.org/wiki/wampserver
27
https://Wikipedia.org/wiki/mysql
36
On peut ainsi créer avec la même facilité des bases de données et
des tables en local comme sur le serveur distant.28
PhpMyAdmin étant un SGBD a comme fonction :
Fonction utilisateur :
Permettre la désignation, l'accès (avec la particularité de
manipuler), l'ajout, la suppression et la modification en manipulant
les données et les liaisons.
Fonction administrateur :
Permettre les charges de la base, sa restauration en cas de panne,
sa réorganisation pour améliorer les performances, sa restriction
pour l'adapter aux évolutions des utilisateurs et des techniques. Il
offre les moyens des surveillances des activités de la base.
Avec le gestionnaire de bases de données phpMyAdmin, vous pourrez
rapidement :
· créer et supprimer des bases de données ;
· créer, copier, supprimer et modifier des tables ;
· supprimer, éditer et ajouter des champs ;
· exécuter des requêtes SQL ;
· importer et exporter des données au format CSV ;
· créer et exploiter des sauvegardes de tables.

III.4 Back office et Front office


Cette application a trois niveaux : le premier concerne le super
administrateur l’administration de l’application en générale, la
modération. Ensuite vient le niveau du chef de promotion(CP)
connecté, ce dernier ayant la possibilité d’alimenter et de modifier
des données (les communiqués) : ce niveau est accessible à toutes
les personnes identifiées par un login et mot de passe. Le troisième
niveau concerne « l’étudiant connecter » c’est-à-dire tous les
utilisateurs finaux et reste réservé à la consultation générale des
données.
Le « Back Office » niveau super administrateur et niveau chef de
promotion avec accès sécurisé permet :
- La maintenance de l’application et de la base de données
- La modération.
- la gestion total de l’application
Le « Front Office » est la partie visible et accessible de la
plateforme pour les étudiants il permet :
- La consultation des informations de l’institut ;
- discuter et poser des questions sur le Forum ;
- joué à un jeu de questionnaire.

28
https://Wikipedia.org/wiki/phpMyAdmin
37
III.5 CODAGE DE L’APPLICATION
Une fois la structure générale de l’application bien définie,
il ne restait plus qu’à la développer. Cette partie de la mission a
été l’une des plus intensives et celle qui fut la plus remplie de
doute. Cette tâche s’est étendue sur presque deux 4 mois.
Et malgré mes quelques connaissances en programmation, elle a
nécessité un grand rassemblement de documentation, comme des
ouvrages dédiés à la programmation ou la consultation de sites et
forums spécialisés. Cette documentation m’a été d’une grande aide
dans la conception des scripts. Dans ce travail, on n’a pas voulu
s’étendre sur le développement pour ne pas en compliquer la lecture.
Tous les scripts ont été conçus et commentés de manière à faciliter
la maintenance de l’application.
Toutefois, il m’a paru intéressant d’évoquer quelques aspects
de mon travail. Dans un premier temps, on peut signaler que toute
l’application a été réalisée en XHTML, c’est-à-dire que le fond et
la forme sont bien distincts grâce à la création d’une feuille de
style CSS : la structure du site est donc facilement modifiable.
À cela s’ajoute le fait que sur chaque page de l’application, l’en-
tête, le menu et le pied de page ont été appelés grâce à un «
include » en PHP. Il existe ainsi des fichiers : entete.php, me
nu.php, footer.php ; il n’est donc pas nécessaire d’intervenir sur
chaque page pour modifier ces parties.
Toutes les requêtes vers la base de données ont été réalisées
avec le langage SQL, et ont été appelées grâce à PHP.
La plupart des scripts réalisés reposent sur le principe des
sessions PHP. Les sessions permettent de suivre l’utilisateur une
fois celui-ci enregistré de manière transparente. Une fois ce
dernier connecté au site un identifiant unique lui est attribué (ID
de session) qui permettra de le suivre tout au long de sa visite et
permet à PHP de retrouver la session qui lui correspond, le serveur
stockant sur disque le contenu des variables dans le répertoire
défini par « session.save_path ».
Les informations, les variables, se transmettent alors de
requête en requête et de page en page. Les sessions permettent de
remédier à l’utilisation de cookies souvent critiqués. Les sessions
sont activées par la commande
« session_start() » ou encore « session_register() » qui doit être
placée avant toute sortie de script ou affichage sous peine
d’erreurs.
Pour détruire une session, il suffit d’appeler la commande
«session_destroy() ; ».
38

III.6 ORDINOGRAMME

POUR LA CONSULTATION DES INFORMATIONS

DEBUT

AUTHENTIFICATI
ON

VERIFICATIO
N

AFFICHAGE PAGE ACCEUIL

CHOIX DU MENU

FIN
39

POUR LE FORUM

DEBUT

AUTHENTIFICATI
ON

VERIFICATIO
N

AFFICHAGE PAGE FORUM

CHOIX DE LA CATEGORIE
POSER UNE
QUESTION

AFFICHAGE
CHOIX DE LA CATEGORIE

FIN
40
III.7 CONCLUSION
Dans ce chapitre, nous avons décrit les processus conceptuels de
notre application en spécifiant l'environnement de développement. En
effet, nous avons achevé l'implémentation et les tests de tous les
cas d'utilisation, tout en respectant la conception élaborée.
41

CHAPITRE IV. REALISATION

Introduction

IV.1. ANALYSE DES BESOINS


Hébergement Stockage illimité, nom
du Domain, sécurité SSL
(securesocket layer),une
base de donnée , une
bonne bande passante

IV.2. PRESENTATION de l’application


Cette partie dénombre la présentation des Scénarios applicatifs de
l’application. Nous allons présenter dans ce qui suit, les imprimes-écran
des principales interfaces réalisées dans notre application web

La page ‘accueil’ lorsque vous arrivez sur l’application


42

La page ‘login’ c’est elle qui va permettre à l’étudiant


d’accéder à la page de consultation des informations.
43

La page ‘home’ c’est la page principale de l’application où les


étudiants peuvent consulter les informations d’urgence ainsi les
deux derniers ajoutés.

La page ‘faculte’ permettra aux étudiants de consultée tous les


informations qui concerne l’institut.
44

La page ‘auditoire’ permettra aux étudiants de consultées les


informations selon sa promotion.
LA PARTIE FORUM
La partie forum vous permettra de poser une question pour avoir une
réponse et discuter pour sur les différents thèmes ou sujets avec
tous les étudiants de l’institut.

La page ‘forum’ c’est la page d’accueil du forum qui permettra aux


étudiants choisir une catégorie a consulté les questions posées.
45

Quand un étudiant clic sur le bouton plus en couler Blue La page


pour poser une question sur le forum s’affiche

La page ‘question’ liste tous les questions selon la catégorie


choisie ;
Pour répondre et voir tout les détails sur la question il suffit de
cliquer sur le bouton ‘répondre’.
46

Cette page permettra de voir les détails de la question et répondre


à une question.

La page ‘Quiz’ permettra de jouer un jeu de question.


LA PARTIE ADMINISTRATIONS (back-end)
La partie back-end permettra d’ajouter, modifier, supprimer une
information
47

La page d’authentification pour accéder à la partie back-end.

La page ‘home’ d’administration.


48

La page pour ajouter une information

IV.4. ESTIMATION DU COUT


Hébergement 200$/An
Coût de l’application 650$
Maintenance de l’application 50$/mois
Total 900$
Imprévu 10%
Main d’œuvre 30%
Coût total 1 260$
49

IV.5. CHRONOGRAMMES D’ACTIVITE


Activités Semaine 1 Semaine 2
J J J J J J J J J J J J J J
1 2 3 4 5 6 7 1 2 3 4 5 6 7
Colletions
des données
Conception
de la base
de données
Développemen
t et
Conceptions
Codages et
réalisation
Finissions
et testes

IV.6. CONCLUSION
A travers ce chapitre, nous avons présenté la réalisation de
l'application, en représentant quelques interfaces graphiques
que nous avons jugé les plus importantes.
50
CONCLUSION GENERAL
Nous voici au terme de notre travail de fin d’étude intitulée «
DEVELOPMENT ET REALISATION D'UNE APPLICATION WEB qui joue de valve
électronique et FORUM » basé sur la résolution des problèmes énoncés
dans la problématique du présent travail qui avait comme champ
d'investigation l’Institut Supérieur d’Informatique, Programmation
et Analyse (ISIPA).
Avec l'évolution de la technologie informatique, aujourd'hui
l'internet nous offres la possibilité de diffuser les informations à
faible coût et rapidement sans tenir compte de la distance.

C'est la raison pour laquelle dans le souci de promouvoir les


échanges des informations de tous genres sur internet et précisément
répondre à la question de la publication des informations, nous
avons développé une application web qui permettra la diffusion des
informations rapidement et à faible coût.

Le présent travail été subdivisé en quatre (4) chapitre qui se


présentaient comme suit :
 CADRE THEORIQUE
 ETUDE PREALABLE
 ANALYSE ET CONCEPTION DU SYSTEME

 RÉALISATION

Dans le premier chapitre, nous avions aborder la définition de


concepts de base ayant trait à notre travail utilisés dans le
travail.

Dans le deuxième chapitre, il nous a été opportun de parler de


l’entreprise d’où nous avons effectué nos investigations et nous
avons critiqué le système existant en proposant une solution.

Dans le troisième chapitre, nous avons parlé de l’approche


conceptuel, logique et physique de notre analyse ainsi processus de
développement et de la conception d’une application web.

Dans le quatrième chapitre, nous avons procédé à la


présentation du résultat de notre travail.
En fin, conscient de la nature imparfaite de l'homme et de sa
perfectibilité continuelle, nous restons ouverts à toutes les
critiques objectives que tout chercheur devra bien nous adresser
après la lecture de ce travail. Voilà d'une manière générale, la
quintessence de l'étude que nous avons menée.
51

BIBLIOGRAPHIE
1. Ouvrages
 STEPHANE, C., Php et MySQL, Paris, 4eme edition, 2019.
 Olivier, H., développez un site web dynamique et interactif,
paris, Edition ENI, 2015.

2. NOTES DES COURS

 KALONDA, R, Méthode de recherche scientifique, ISIPA-kin,2019-


2020, inédit.
 KAYAMBA, T., Algorithme, ISIPA-kin,2018-2019, inédit.
 KAYAMBA, T., merise II, ISIPA-kin,2020-2021, inédit.
 HYANGANGA, B., Programmation Web, ISIPA-kin,2020-2021, inédit.

3. TRAVAUX DE FIN DE CYCLE

 KAMENA, C., Démarche d’informatisation pour la publication en


ligne des résultats des étudiants à l’ISIPA, TFC, ISIPA/2017-
2018, inédit.

4. WEBOGRAPHIE

 https://www.isipa.cd, consulté le 20/03/2021 à 00h00’.


 https://www.Wikipedia.org consulté le 25/03/2021 à 00h00’.
 https://www.commentcamarche.net consulté le 15/05/2021 à
00h00’.
 https://www.openclassroom.com consulté le 23/07/2021 à 12h00’.
 https://www.techno-science.net consulté le 25/08/2021 à 00h00’.
52

Table des matières


INTRODUCTION GENERALE.............................................................................................................4
1. PROBLÉMATIQUE.....................................................................................................................4
2. HYPOTHÈSE..............................................................................................................................4
3. CHOIX ET INTÉRÊT DU SUJET....................................................................................................5
3.1. Choix du sujet............................................................................................................5
3.1 Intérêt du sujet............................................................................................................5
4. METHODE ET TECHNIQUE UTILISÉ..............................................................................................5
4.1. Méthode..................................................................................................................................5
4.2 Technique.................................................................................................................................6
5. DELIMITATION DU SUJET......................................................................................................6
6 SUBDIVISION DU TRAVAIL....................................................................................................6
7 Difficultés rencontré......................................................................................................7
CHAPITRE I CADRE THEORIQUE......................................................................................................8
Introduction....................................................................................................................................8
I.1. Généralité sur la programmation.............................................................................................8
I.1.2 Algorithme..............................................................................................................................8
I.2 Programmation web..................................................................................................................9
I.2.3 Programmation web côté client..........................................................................10
I.2.4 Programmation web côté Serveur...................................................................................10
I.2.5 Langages pour pages Web dynamiques..........................................................................11
I.3. Base de données..........................................................................................................11
I.3. LES RESAUX INFORMATIQUE.............................................................................................11
I.3.1 DEFINITIN..............................................................................................................................11
I.3.2 Internet.................................................................................................................................12
I.3.3 Un site web...........................................................................................................................12
I.3.3.1 Un site statique..................................................................................................................12
I.3.3.2 Un site dynamique.............................................................................................................12
I.3.4 Une application web.............................................................................................................12
I.3.4.1 L’architecture des applications web..................................................................................13
I.3.4.2 L’application Client/serveur...............................................................................................14
I.3.4.3 Le fonctionnement d’une application web........................................................................14
I.2.5 Le serveur web.....................................................................................................................15
I.3.6 L’hébergement d’une application web.................................................................................15
I.3.7 Les langages utilisés pour la création des applications web.................................................16
I.3.8 FORUM.................................................................................................................................16
CHAPITRE II ETUDE PREALABLE....................................................................................................17
II.1 PRESENTATION DE L’ISIPA......................................................................................................17
II.1.2 Objectif................................................................................................................................17
II.1.3 Situation géographique.......................................................................................................18
II.1.4 ORGANIGRAMME................................................................................................................19
II.1.5 Description des taches.........................................................................................................20
II.1.5.1 Le président directeur général..........................................................................................20
II.1.5.2 Le comité de gestion.........................................................................................................20
II.1.5.3 Le directeur général..........................................................................................................20
II.1.5.4 Le secrétaire général académique....................................................................................20
II.1.5.5 Secrétaire General administratif.......................................................................................20
53
II.1.5.6La section informatique.....................................................................................................20
II.1.5.7 Département de technique maintenance et communication...........................................21
II.1.5.8 Département informatique de gestion.............................................................................21
II.1.5.9 La section science commerciale........................................................................................21
II.1.5.10 Département douane et accises.....................................................................................21
II.1.5.11 Département Gestion financière....................................................................................21
II.1.5.12 Le secrétariat..................................................................................................................21
II.1.5.13 L’administration du budget............................................................................................21
II.1.5.14 Comptabilité...................................................................................................................21
II.1.6 Présentation du système informatique existant..................................................................21
II.1.6.1 Recensement des équipements informatiques................................................................22
II.1.6.2 Schéma du réseau............................................................................................................23
II.1.6.3 Plan des vlan.....................................................................................................................25
II.2 Description de l’existant.........................................................................................................26
II.3 CRITIQUE DE L’EXISTANT........................................................................................................26
II.4 PROPOSITION ET CHOIX D'UNE SOLUTION.............................................................................26
II.4.1 Choix d'une solution................................................................................................27
Conclusion....................................................................................................................................27
CHAPITRE III. ANALYSE ET CONCEPTION DU SYSTEME.................................................................28
III.1. INTRODUCTION....................................................................................................................28
III.2. ANALYSE DU NOUVEAU SYSTEME........................................................................................28
III.2.1. MODELISATION DE LA BASE DE LA DONNEE......................................................................28
RECENSEMENT DES ENTITES.........................................................................................................28
CONCEPTION DE LA BASE DE DONNEES.......................................................................................29
MODELE LOGIQUE DE DONNEES..................................................................................................29
MODELE PHYSIQUE DE DONNEES.................................................................................................31
III.3. CHOIX DE L’ENVIRONNEMENT..............................................................................................31
III.3.1. CHOIX DU LANGAGE..........................................................................................................31
III.3.2. CHOIX DU SYSTEME DE GESTION BASE DE DONNÉES........................................................31
III.3.3. Description des OUTILS ET LANGAGE UTILISES..................................................................32
III.4 Back office et Front office......................................................................................................36
III.5 CODAGE DE L’APPLICATION...................................................................................................37
III.6 ORDINOGRAMME..................................................................................................................38
III.7 CONCLUSION..................................................................................Erreur ! Signet non défini.
CHAPITRE IV. REALISATION...........................................................................................................41
Introduction..................................................................................................................................41
IV.1. ANALYSE DES BESOINS.........................................................................................................41
IV.2. PRESENTATION de l’application...........................................................................................41
IV.4. ESTIMATION DU COUT.........................................................................................................48
IV.5. CHRONOGRAMMES D’ACTIVITE...........................................................................................49
IV.6. CONCLUSION........................................................................................................................49
CONCLUSION GENERAL................................................................................................................50
BIBLIOGRAPHIE.............................................................................................................................51

Vous aimerez peut-être aussi