Branche classes

This commit is contained in:
2025-09-14 22:19:37 +02:00
parent 2a1804109b
commit 1aafd18ccd
10 changed files with 80 additions and 22 deletions

View File

@@ -0,0 +1,24 @@
<?php
require("../modele/Livre.php");
class LivreControleur {
private $livre;
public function __construct()
{
$this->livre = new Livre();
}
public function ajouterLivre() {
if (!empty($_POST['categorie']) && !empty($_POST['titre']) && !empty($_POST['auteur']) && !empty($_POST['annee'])) {
$this->livre->ajouter($_POST['categorie'], $_POST['titre'], $_POST['auteur'], $_POST['annee']);
}
}
public function listerLivres() {
return $this->livre->getAll();
}
}
?>

View File

@@ -1,7 +1,7 @@
<?php
require("../modele/livres.php");
require("../controleur/LivreControleur.php");
$livres = getLivres();
$livres = new LivreControleur()->listerLivres();
include("../vue/header.php");
include("../vue/bibliotheque.php");

View File

@@ -1,8 +1,8 @@
<?php
require("../modele/livres.php");
require("../controleur/LivreControleur.php");
require("../modele/categories.php");
addLivre();
new LivreControleur()->ajouterLivre();
$categories = getCategories();
include("../vue/header.php");

View File

@@ -1,14 +0,0 @@
<?php
class Livre {
function getAll() {
}
function ajouter($titre, $auteur, $annee) {
}
}
?>

View File

@@ -1,3 +0,0 @@
<?php
?>

20
donnees/Database.php Normal file
View File

@@ -0,0 +1,20 @@
<?php
class Database {
private $ip = "localhost";
private $user = "adminBibli";
private $pass = "mdpBibli";
private $database = "bdbibliotheque";
public function connexionDB() {
$dsn = "mysql:host=$this->ip;dbname=$this->database;charset=utf8mb4";
try {
$db = new PDO($dsn, $this->user, $this->pass);
return $db;
} catch (PDOException $e) {
die("Erreur de connexion : " . $e->getMessage());
}
}
}
?>

26
modele/Livre.php Normal file
View File

@@ -0,0 +1,26 @@
<?php
require("../donnees/Database.php");
class Livre {
private $db;
public function __construct() {
$database = new Database();
$this->db = $database->connexionDB();
}
public function getAll() {
$stmt = $this->db->query("SELECT * FROM livres");
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}
public function ajouter($categorie, $titre, $auteur, $annee) {
$stmt = $this->db->prepare("INSERT INTO livres (categorie, titre, auteur, annee) VALUES (?, ?, ?, ?)");
$stmt->execute([$categorie, $titre, $auteur, $annee]);
}
}
$livres = new Livre();
var_dump($livres->getAll());
?>

View File

@@ -1,5 +1,4 @@
<?php
include("../donnees/connexion.php");
// Ajout dun livre
function addLivre() {

6
test.php Normal file
View File

@@ -0,0 +1,6 @@
<?php
require("./modele/Livre.php");
$livres = new Livre();
var_dump($livres->getAll());
?>