COURS DevWebPHP
COURS DevWebPHP
COURS DevWebPHP
1.0 Introduction
Nous allons lors de ce cours créer un site de gestion de livres.
Avant de commencer, nous allons installer un éditeur de code (je vous conseille
VSCODE) ensuite vous allez installer XAMPP et le configurer, vous pouvez
définir votre port si vous voulez.
Lors de ce cours nous allons proposer une structure d’un site complet en PHP
nous allons utiliser l’architecture MVC, de la méthode de programmation POO
associée à une base de donnée mysql.
➢ Structure du site: Créer une structure basique d’un site Web.
➢ Programmation orientée objet: Structurer les données et les traitements en
POO.
➢ Base de données MySQL: ajouter des bases de données gérées en PDO.
➢ Architecture MVC: modifier l’architecture pour être conforme au MVC.
➢ CRUD: réaliser les traitements, d’affichage, d’ajout, de modification, et
de suppression de livres présents dans une BD.
<?php ob_start()?>
Voici le contenu de ma page d accueill
<?php
$content = ob_get_clean();
$titre="page d acceuille";
require "template.php";
?>
<?php
$content = ob_get_clean();
$titre = "Les livres de la bibliothèque";
require "template.php";
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,
initial-scale=1.0">
<link rel="stylesheet"
href="https://bootswatch.com/5/quartz/bootstrap.min.css">
<title>Document</title>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<button class="navbar-toggler" type="button"
data-toggle="collapse" data-target="#navbarSupportedContent"
aria-controls="navbarSupportedContent" aria-expanded="false"
aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse"
id="navbarSupportedContent">
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link" href="index.php">Accueill</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="livres.php">Mes Livres</a>
</li>
</ul>
</div>
</nav>
<div class="container">
<h1 class="rounded border border-dark p-2 m-2 text-center
text-white bg-info"> <?php echo "$titre" ?> </h1>
<?php echo "$content" ?>
</div>
<script src="https://code.jquery.com/jquery-3.4.1.slim.min.js"
integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV
0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script>
<script
src="https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/popper
.min.js"
integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3
UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
<script
src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstr
ap.min.js"
integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uo
d8GCExl3Og8ifwB6" crossorigin="anonymous"></script>
</body>
</html>
<?php ob_start()?>
Contenu de la page des livres de la bibliotheque
<?php
$content = ob_get_clean();
$titre="Les livres de la bibliotheque";
require "template.php";
?>
Objectif:
1. Ajouter des images dans le dossier/public/images
2. Créer un tableau html listant les livres.
Dans le fichier livres.php, nous avons:
<?php ob_start()?>
</tr>
<tr>
<th scope="row"><img src="public/imagees/download.jpeg"></th>
<td>Jacob</td>
<td>Thornton</td>
<td>@fat</td>
<td>@fat</td>
</tr>
<tr>
<th scope="row"><img src="public/imagees/langC.jpeg"></th>
<td>Larry</td>
<td>the Bird</td>
<td>@twitter</td>
<td>@twitter</td>
</tr>
</tbody>
</table>
<a type="button" class="btn btn-outline-success d-block">AJOUTER</a>
<?php
$content = ob_get_clean();
$titre="Les livres de la bibliotheque";
require "template.php";
?>
2.0 Introduction:
Dans cette partie nous allons voir les choses d’une autre manière. Nous allons modéliser les
livres sous forme de classes. Cette classe livre aura pour attribut: identifiant, titre, nombre de
pages, et le chemin pour accéder à l’emplacement de l’image. et pour méthode sont : les
getters et les setters. L’objectif est de modéliser les informations de la page livre sous forme
de classes:
2.1 IMPLÉMENTATION:
–créer les livres et un tableau nomme listeLivres qui contiendra la liste des livres.
–ensuite nous allons nous servire du tableau et parcourire la liste des livres les afficher selon
le code suivant:
<!--
<tr>
<th scope="row"><img src="public/imagees/download.jpeg"></th>
<td>Jacob</td>
<td>Thornton</td>
<td>@fat</td>
<td>@fat</td>
</tr>
<tr>
<th scope="row"><img src="public/imagees/langC.jpeg"></th>
<td>Larry</td>
<td>the Bird</td>
<td>@twitter</td>
<td>@twitter</td>
</tr>
-->
<?php
$content = ob_get_clean();
$titre="Les livres de la bibliotheque";
require "template.php";
?>
Visitez alors le rendu du site pour constater les modifications:
● Manipulation des attributs et fonctions statiques.
Nous nous fixons pour objectif de créer une variable statique dans la
classe livre et qui sera disponible d'accès par les les fonctions
tierces créées à l'intérieure de notre classe. Cette variable sera
connue par la classe et non via les objets comme nous l’avons fait
précédemment dans le fichier livres.php.
EXERCICE 1:
Créer une classe LivreManager qui aura pour but de gérer les livres
sans passer par les attributs static
LivreManager
livres
getLivres()
ajoutLivre(livre)
faites les modifications necessaires pour permetre a LivresManager
d’implementer ces fonctionnalites.