Rapport Final 3
Rapport Final 3
Rapport Final 3
Introduction
Objectif du Rapport
Ce rapport présente le développement d'un site web conçu par notre groupe pour une
petite entreprise, dans le cadre de notre projet universitaire à l'ISIPA. Ce document a
pour but de décrire le processus de création du site, les choix techniques effectués,
ainsi que les défis rencontrés et les solutions apportées.
Contexte
Dans le cadre de notre formation en développement web, notre groupe a été chargé de
concevoir et de réaliser un site web pour une petite entreprise de pharmaceutique. Ce
projet avait pour objectif principal de créer une application web fonctionnelle, en
utilisant exclusivement les langages HTML et CSS. Le site devait répondre à des
exigences spécifiques : offrir une présentation claire et attrayante des informations de
l’entreprise et inclure un total de cinq pages.
Dans les points qui suivront nous verront comment notre site web a ete concu, nous
expliquerons nos choix et les defsi que nous avons rencontres pendant notre travail.
N.B: Dans la description du site nous avons omis volontairement les structures
fondamentales du HTML (Doctype, head...) pour nous concentrez sur les points
important du projet.
STRUCTURE HTML
CODE HTML
/* Conteneur principal */
.container {
width: 80%;
margin: auto;
overflow: hidden;
}
/* En-tête */
header {
background: #333;
color: #fff;
padding: 20px 0;
}
header .site-name {
font-size: 2em;
margin-bottom: 10px;
display: flex;
justify-content: center;
}
header .message {
font-size: 1.2em;
margin-bottom: 10px;
display: flex;
justify-content: center;
}
header .search-form {
margin-bottom: 10px;
display: flex;
justify-content: center;
}
header nav ul {
list-style: none;
padding: 0;
display: flex;
justify-content: center;
}
header nav ul li {
display: inline;
border-radius: 15px;
margin-right: 15px;
display: flex;
justify-content: center;
cursor: pointer;
transition-duration: 0.8s all ease;
}
header nav ul li a {
color: #fff;
text-decoration: none;
display: flex;
justify-content: center;
}
STRUCTURE HTML
CODE CSS
/* Section Accueil */
.home-section {
padding: 20px 0;
text-align: center;
}
.home-section .home-image {
width: 100%;
height: auto;
}
3.footer
STRUCTURE HTML
CODE CSS
footer {
background-color: #333; /* Couleur de fond sombre pour le footer */
color: #fff; /* Couleur du texte en blanc pour le contraste */
padding: 20px 0; /* Espacement vertical */
text-align: center; /* Alignement du texte au centre */
}
Chaque medicament est presente individuellement dans une carte dans laquelle on
retrouve l’image du medicament le nom du medicament et l’utilité du medicament .
<div class="carte">
<img src="c:\Users\HP\Downloads\paracetamol.jfif" alt="Nom Médicament
1">
<h3>Paracétamol 500mg</h3>
<p>Utilisé pour soulager la douleur légère à modérée et réduire la
fièvre.</p>
<p class="prix">€5.00</p>
<a href="info-gelule1.html" class="bouton">Plus d'Infos</a>
</div>
CODE CSS
.medicaments {
display: flex;
flex-direction: row;
flex-wrap: wrap;
}
.categories {
display: flex;
flex-direction: column;
flex-wrap: wrap;
padding: 20px;
}
.categorie {
width: 100%;
margin-bottom: 20px;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-around;
}
h2 {
border-top: none;
border-bottom: 2px solid #4CAF50;
padding-bottom: 10px;
}
.carte {
width: 40%;
background: white;
border-radius: 8px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
margin: 10px 0;
padding: 15px;
text-align: center;
}
.carte img {
max-width: 100%;
border-radius: 8px;
}
.carte h3 {
margin: 10px 0;
}
.prix {
color: #4CAF50;
font-size: 18px;
margin: 10px 0;
}
.bouton {
display: inline-block;
background-color: #4CAF50;
color: white;
padding: 10px 20px;
border-radius: 5px;
text-decoration: none;
font-weight: bold;
}
.bouton:hover {
background-color: #45a049;
}
STRUCTURE HTML
<div class="form-group">
<label for="nom">Nom du medicament :</label>
<input type="text" id="nom" name="nom" required>
</div>
<div class="form-group">
<label for="categorie">Catégorie :</label>
<select id="categorie" name="categorie" required>
<option value="hommes">Medicament en comprime</option>
<option value="femmes">Creme pharmaceutique</option>
</select>
</div>
<div class="form-group">
<label for="quantite">Quantité :</label>
<input type="number" id="quantite" name="quantite" required>
</div>
4. La description du médicament ou l’utilité du médicament
<div class="form-group">
<label for="description">Description :</label>
<textarea id="description" name="description" required></textarea>
</div>
<div class="form-group">
<label for="image">Image (URL) :</label>
<input type="url" id="image" name="image" required>
</div>
STRUCTURE CSS
/* Section Ajouter */
.ajouter-section {
padding: 20px 0;
}
.ajouter-form {
display: flex;
flex-direction: column;
gap: 15px;
}
.ajouter-form .form-group {
display: flex;
flex-direction: column;
}
.submit {
padding: 1rem 0.75rem;
width: 100%;
display: flex;
align-items: center;
gap: 0.5rem;
border-radius: 3rem;
background-color: gray;
color: white;
border: none;
cursor: pointer;
transition: all 300ms;
font-weight: 600;
font-size: 0.9rem;
}
.submit:hover {
background-color: rgb(99, 219, 99);
color: gray;
}
Pour ce faire nous avons utiliser le même système de carte que dans la liste des
médicaments , le code est légèrement ajuster parce que les exigences sont moins ici et
c’est ce qui nous permet d’obtenir ce résultat.
STRUCTURE HTML
<section class="container">
<h2>Qui sommes-nous ?</h2>
<div class="membres">
<div class="membre">
<img src="c:\Users\HP\Pictures\grace.JPG" alt="Personne 1">
<div class="info">
<h3>NSENGA UMBA GRACE</h3>
<p>08 12 34 56 78</p>
</div>
</div>
</section>
CODE CSS
.membres {
display: flex;
flex-wrap: wrap;
margin-left: 0px;
margin-bottom: 8px;
}
.membre {
width: 210px;
height: 320px;
background: #fff;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
text-align: center;
margin-right: 15px;
margin-top: 8px;
}
.membre img {
width: 200px;
height: 220px;
border-radius: 10px;
}
.info {
padding: 15px;
}
.info h3 {
margin: 1px 0;
font-size: 1em;
color: #333;
}
.info p {
margin: 0;
color: #666;
font-size: 1em;
}
CODE HTML
<form class="contact-form">
<div class="form-group">
<label for="nom">Nom :</label>
<input type="text" id="nom" name="nom" >
</div>
<div class="form-group">
<label for="email">Email :</label>
<input type="email" id="email" name="email" >
</div>
<div class="form-group">
<label for="message">Message :</label>
<textarea id="message" name="message" required></textarea>
</div>
CODE CSS
.form-group {
margin-bottom: 15px; /* Espacement en bas des groupes de champs */
width: 100%; /* Largeur complète des groupes de champs */
max-width: 600px; /* Largeur maximale des groupes de champs */
}
.form-group label {
display: block; /* Affichage en bloc pour les étiquettes */
margin-bottom: 5px; /* Espacement en bas des étiquettes */
font-weight: bold; /* Poids de la police pour les étiquettes */
}
.form-group input,
.form-group textarea {
width: 100%; /* Largeur complète des champs de saisie */
padding: 10px; /* Espacement interne */
border: 1px solid #ddd; /* Bordure claire pour les champs */
border-radius: 5px; /* Bords arrondis pour les champs */
}
.form-group textarea {
resize: vertical; /* Permet de redimensionner le champ de texte
uniquement verticalement */
min-height: 100px; /* Hauteur minimale pour le champ de texte */
}
.submit {
padding: 1rem 0.75rem;
width: 60%;
display: flex;
align-items: center;
gap: 0.5rem;
border-radius: 3rem;
background-color: gray;
color: white;
border: none;
cursor: pointer;
transition: all 300ms;
font-weight: 600;
font-size: 0.9rem;
}
.submit:hover {
background-color: rgb(99, 219, 99);
color: gray;
}
• Les erreurs de syntaxe, comme le sélecteur :hover mal écrit (header nav ul
li :hover au lieu de header nav ul li:hover), peuvent empêcher le style
de s’appliquer correctement. Le débogage des styles CSS et l’utilisation des
outils de développement des navigateurs peuvent aider à résoudre ces
problèmes.
• Les grandes images ou des fichiers CSS non optimisés peuvent ralentir le temps
de chargement de la page. Il est important d’optimiser les images et de
minimiser les fichiers CSS et JavaScript.
• Assurer une apparence cohérente avec les autres pages du site, en termes de
couleurs, typographie et mise en page. Des incohérences peuvent nuire à
l'expérience utilisateur.
• Créer une interface utilisateur qui est intuitive et facile à utiliser. Par exemple,
les formulaires doivent être clairs et faciles à remplir, avec des instructions
appropriées.
Les défis rencontrés dans le développement web peuvent être divers et nécessitent
une approche méthodique pour garantir une expérience utilisateur fluide et cohérente.
La clé est de tester régulièrement, de suivre les meilleures pratiques en matière de
conception et de sécurité, et d’être prêt à résoudre les problèmes au fur et à mesure
qu’ils se présentent.
1. ACCUEIL HTML
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Wewatoo</title>
<link rel="stylesheet" href="wewatoo.css">
</head>
<body>
<!-- En-tête -->
<header>
<div class="container">
<p class="message">BIENVENUE A LA PHARMACIE EN LIGNE WEWATOO
!</p>
<nav>
<ul>
<li><a href="wewatoo.html">Accueil</a></li>
<li><a href="vetements.html">Liste des
medicaments</a></li>
<li><a href="ajouter.html">Ajouter un
medicament</a></li>
<li><a href="membres.html">Qui sommes-nous ?</a></li>
<li><a href="contact.html">Contacts</a></li>
</ul>
</nav>
</div>
</header>
<header>
<div class="container">
<p class="welcome-message">BIENVENUE A LA BOUTIQUE WEWATOO !</p>
<nav>
<ul>
<li><a href="wewatoo.html">Accueil</a></li>
<li><a href="vetements.html">Liste des
medicaments</a></li>
<li><a href="ajouter.html">Ajouter un
medicament</a></li>
<li><a href="membres.html">Qui sommes-nous ?</a></li>
<li><a href="contact.html">Contacts</a></li>
</ul>
</nav>
</div>
</header>
<div class="carte">
<img src="c:\Users\HP\Downloads\Crème
Hydratante.jfif" alt="Nom Crème 1">
<h3>Crème Hydratante </h3>
<p>Utilisée pour hydrater et apaiser les peaux
sèches et sensibles.</p>
<p class="prix">€8.00</p>
<a href="info-creme1.html" class="bouton">Plus
d'Infos</a>
</div>
<div class="carte">
<img src="c:\Users\HP\Downloads\Crème
Antirides.jfif" alt="Nom Crème 2">
<h3>Crème Antirides</h3>
<p>Crème destinée à réduire l'apparence des rides et
des ridules.</p>
<p class="prix">€12.00</p>
<a href="info-creme2.html" class="bouton">Plus
d'Infos</a>
</div>
<div class="carte">
<img src="c:\Users\HP\Downloads\Crème
Apaisante.jfif" alt="Nom Crème 3">
<h3>Crème Apaisante</h3>
<p>Crème pour apaiser les irritations cutanées et
les rougeurs.</p>
<p class="prix">€9.00</p>
<a href="info-creme3.html" class="bouton">Plus
d'Infos</a>
</div>
<div class="carte">
<img src="c:\Users\HP\Downloads\Crème
reparatrice.jfif" alt="Nom Crème 4">
<h3>Crème Réparatrice</h3>
<p>Crème réparatrice pour les zones sèches et
abîmées de la peau.</p>
<p class="prix">€11.00</p>
<a href="info-creme4.html" class="bouton">Plus
d'Infos</a>
</div>
</div>
</section>
</div>
</section>
<footer>
<p>© 2024 Wewatoo. Tous droits réservés.</p>
</footer>
</body>
</html>
<section class="ajouter-section">
<div class="container">
<h2>Ajouter un Vêtement</h2>
<form class="ajouter-form">
<div class="form-group">
<label for="nom">Nom du vêtement :</label>
<input type="text" id="nom" name="nom" required>
</div>
<div class="form-group">
<label for="categorie">Catégorie :</label>
<select id="categorie" name="categorie" required>
<option value="hommes">Medicament en
comprime</option>
<option value="femmes">Creme pharmaceutique</option>
</select>
</div>
<div class="form-group">
<label for="quantite">Quantité :</label>
<input type="number" id="quantite" name="quantite"
required>
</div>
<div class="form-group">
<label for="description">Description :</label>
<textarea id="description" name="description"
required></textarea>
</div>
<div class="form-group">
<label for="image">Image (URL) :</label>
<input type="url" id="image" name="image" required>
</div>
<footer>
<p>© 2024 Wewatoo. Tous droits réservés.</p>
</footer>
</body>
</html>
4. Membres HTML
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Wewatoo</title>
<link rel="stylesheet" href="membres.css">
</head>
<body>
<header>
<div class="container">
<p class="welcome-message">BIENVENUE A LA BOUTIQUE WEWATOO !</p>
<nav>
<ul>
<li><a href="wewatoo.html">Accueil</a></li>
<li><a href="vetements.html">Liste des
medicaments</a></li>
<li><a href="ajouter.html">Ajouter un
medicament</a></li>
<li><a href="membres.html">Qui sommes-nous ?</a></li>
<li><a href="contact.html">Contacts</a></li>
</ul>
</nav>
</div>
</header>
<section class="membredugroupe"></section>
<div class="container">
<h2>Qui sommes-nous ?</h2>
<div class="membres">
<div class="membre">
<img src="c:\Users\HP\Pictures\grace.JPG" alt="Personne 1">
<div class="info">
<h3>NSENGA UMBA GRACE</h3>
<p>08 12 34 56 78</p>
</div>
</div>
<div class="membre">
<img src="c:\Users\HP\Pictures\nicole.JPG" alt="Personne 2">
<div class="info">
<h3>NDAYA MUTOMBO NICOLE</h3>
<p>08 23 45 67 89</p>
</div>
</div>
<div class="membre">
<img src="c:\Users\HP\Pictures\bienelle.JPG" alt="Personne
3">
<div class="info">
<h3>AKOTSHI MARIE BIENELLE</h3>
<p>08 34 56 78 90</p>
</div>
</div>
<div class="membre">
<img src="c:\Users\HP\Pictures\vanessa.JPG" alt="Personne
4">
<div class="info">
<h3>MONDONGI EGLANTINE VANESSA</h3>
<p>08 45 67 89 01</p>
</div>
</div>
<div class="membre">
<img src="c:\Users\HP\Pictures\mervedi.JPG" alt="Personne
5">
<div class="info">
<h3>MBADU MONZOTO MERVEDI</h3>
<p>08 56 78 90 12</p>
</div>
</div>
<div class="membre">
<img src="c:\Users\HP\Pictures\judith.JPG" alt="Personne 6">
<div class="info">
<h3>MPEMBE BAFUMA JUDITH</h3>
<p>08 67 89 01 23</p>
</div>
</div>
<div class="membre">
<img src="c:\Users\HP\Pictures\guy.JPG" alt="Personne 7">
<div class="info">
<h3>LOKWA LAMANGA GUY</h3>
<p>08 78 90 12 34</p>
</div>
</div>
<div class="membre">
<img src="c:\Users\HP\Pictures\naomie.JPG" alt="Personne 8">
<div class="info">
<h3>NGYAMBA ODRADE NAOMIE</h3>
<p>08 89 01 23 45</p>
</div>
</div>
<div class="membre">
<img src="c:\Users\HP\Pictures\chris.JPG" alt="Personne 9">
<div class="info">
<h3>ELONGA VANGU CHRIS</h3>
<p>08 90 12 34 56</p>
</div>
</div>
<div class="membre">
<img src="c:\Users\HP\Pictures\peter.JPG" alt="Personne 10">
<div class="info">
<h3>BANGAKYA MANDZUNEY PETER</h3>
<p>08 01 23 45 67</p>
</div>
</div>
</div>
</div>
</section>
<footer>
<p>© 2024 Wewatoo. Tous droits réservés.</p>
</footer>
</body>
</html>
5. Contact HTML
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Wewatoo</title>
<link rel="stylesheet" href="contact.css">
</head>
<body>
<header>
<div class="container">
<p class="welcome-message">BIENVENUE A LA BOUTIQUE WEWATOO !</p>
<nav>
<ul>
<li><a href="wewatoo.html">Accueil</a></li>
<li><a href="vetements.html">Liste des
medicaments</a></li>
<li><a href="ajouter.html">Ajouter un
medicament</a></li>
<li><a href="membres.html">Qui sommes-nous ?</a></li>
<li><a href="contact.html">Contacts</a></li>
</ul>
</nav>
</div>
</header>
<div class="container">
<div class="contact-section" id="contact">
<h2>Contact</h2>
<p>Pour toute question ou information, n'hésitez pas à nous
contacter :</p>
<form class="contact-form">
<div class="form-group">
<label for="nom">Nom :</label>
<input type="text" id="nom" name="nom" required>
</div>
<div class="form-group">
<label for="email">Email :</label>
<input type="email" id="email" name="email"
required>
</div>
<div class="form-group">
<label for="message">Message :</label>
<textarea id="message" name="message"
required></textarea>
</div>
/* Conteneur principal */
.container {
width: 80%;
margin: auto;
overflow: hidden;
}
/* En-tête */
header {
background: #333;
color: #fff;
padding: 20px 0;
}
header .site-name {
font-size: 2em;
margin-bottom: 10px;
display: flex;
justify-content: center;
}
header .message {
font-size: 1.2em;
margin-bottom: 10px;
display: flex;
justify-content: center;
}
header .search-form {
margin-bottom: 10px;
display: flex;
justify-content: center;
}
header nav ul {
list-style: none;
padding: 0;
display: flex;
justify-content: center;
}
header nav ul li {
display: inline;
border-radius: 15px;
margin-right: 15px;
display: flex;
justify-content: center;
cursor: pointer;
transition-duration: 0.8s all ease;
}
header nav ul li a {
color: #fff;
text-decoration: none;
display: flex;
justify-content: center;
}
/* Section Accueil */
.home-section {
padding: 20px 0;
text-align: center;
}
.home-section .home-image {
width: 100%;
height: auto;
}
.medicaments {
display: flex;
flex-direction: row;
flex-wrap: wrap;
}
.categories {
display: flex;
flex-direction: column;
flex-wrap: wrap;
padding: 20px;
}
.categorie {
width: 100%;
margin-bottom: 20px;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-around;
}
h2 {
border-top: none;
border-bottom: 2px solid #4CAF50;
padding-bottom: 10px;
}
.carte {
width: 40%;
background: white;
border-radius: 8px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
margin: 10px 0;
padding: 15px;
text-align: center;
}
.carte img {
max-width: 100%;
border-radius: 8px;
}
.carte h3 {
margin: 10px 0;
}
.prix {
color: #4CAF50;
font-size: 18px;
margin: 10px 0;
}
.bouton {
display: inline-block;
background-color: #4CAF50;
color: white;
padding: 10px 20px;
border-radius: 5px;
text-decoration: none;
font-weight: bold;
}
.bouton:hover {
background-color: #45a049;
}
/* Section Ajouter */
.ajouter-section {
padding: 20px 0;
}
.ajouter-form {
display: flex;
flex-direction: column;
gap: 15px;
}
.ajouter-form .form-group {
display: flex;
flex-direction: column;
}
.submit {
padding: 1rem 0.75rem;
width: 100%;
display: flex;
align-items: center;
gap: 0.5rem;
border-radius: 3rem;
background-color: gray;
color: white;
border: none;
cursor: pointer;
transition: all 300ms;
font-weight: 600;
font-size: 0.9rem;
}
.submit:hover {
background-color: rgb(99, 219, 99);
color: gray;
}
/* Section membres */
.membres {
display: flex;
flex-wrap: wrap;
margin-left: 0px;
margin-bottom: 8px;
}
.membre {
width: 210px;
height: 320px;
background: #fff;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
text-align: center;
margin-right: 15px;
margin-top: 8px;
}
.membre img {
width: 200px;
height: 220px;
border-radius: 10px;
}
.info {
padding: 15px;
}
.info h3 {
margin: 1px 0;
font-size: 1em;
color: #333;
}
.info p {
margin: 0;
color: #666;
font-size: 1em;
}
/* Section contact */
.contact-section {
margin-bottom: 20px; /* Espacement en bas de la section contact */
}
.contact-section h2 {
font-size: 1.8em; /* Taille de la police pour le titre */
margin-bottom: 10px; /* Espacement en bas du titre */
}
.contact-section p {
margin-bottom: 20px; /* Espacement en bas du paragraphe */
font-size: 1.1em; /* Taille de la police pour le texte */
}
.contact-form {
display: flex;
flex-direction: column; /* Disposition verticale des éléments du
formulaire */
align-items: center; /* Alignement des éléments au centre */
}
.form-group {
margin-bottom: 15px; /* Espacement en bas des groupes de champs */
width: 100%; /* Largeur complète des groupes de champs */
max-width: 600px; /* Largeur maximale des groupes de champs */
}
.form-group label {
display: block; /* Affichage en bloc pour les étiquettes */
margin-bottom: 5px; /* Espacement en bas des étiquettes */
font-weight: bold; /* Poids de la police pour les étiquettes */
}
.form-group input,
.form-group textarea {
width: 100%; /* Largeur complète des champs de saisie */
padding: 10px; /* Espacement interne */
border: 1px solid #ddd; /* Bordure claire pour les champs */
border-radius: 5px; /* Bords arrondis pour les champs */
}
.form-group textarea {
resize: vertical; /* Permet de redimensionner le champ de texte
uniquement verticalement */
min-height: 100px; /* Hauteur minimale pour le champ de texte */
}
.submit {
padding: 1rem 0.75rem;
width: 60%;
display: flex;
align-items: center;
gap: 0.5rem;
border-radius: 3rem;
background-color: gray;
color: white;
border: none;
cursor: pointer;
transition: all 300ms;
font-weight: 600;
font-size: 0.9rem;
}
.submit:hover {
background-color: rgb(99, 219, 99);
color: gray;
}
footer {
background-color: #333; /* Couleur de fond sombre pour le footer */
color: #fff; /* Couleur du texte en blanc pour le contraste */
padding: 20px 0; /* Espacement vertical */
text-align: center; /* Alignement du texte au centre */
}
Conclusion
Recommandations
Perspectives
Nous pourrions envisager d’ajouter des éléments tels que des animations CSS pour
améliorer l'esthétique du site et attirer davantage l'attention des utilisateurs pourrait
également faciliter la gestion des styles, surtout pour des projets plus complexes.
Annexes
Les annexes comprennent des maquettes de l’interface, des extraits de code, ainsi que
des diagrammes illustrant la structure du site.
Remerciements
Nous tenons à remercier nos enseignants pour leurs conseils précieux et nos
coéquipiers pour leur collaboration et leur engagement durant ce projet.