Initial commit : CMS Simplifié

This commit is contained in:
Safouane Bazzi
2025-10-21 21:34:20 +02:00
commit 9e0c151fa6
17 changed files with 622 additions and 0 deletions

48
public/index.php Normal file
View File

@@ -0,0 +1,48 @@
<?php
require __DIR__ . '/../inc/db.php';
$stmt=$pdo->prepare("SELECT id,titre,SUBSTRING(contenu,1,180) AS intro,date_creation FROM articles ORDER BY date_creation DESC LIMIT 10");
$stmt->execute();
$articles=$stmt->fetchAll();
?>
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Accueil</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="assets/style.css" rel="stylesheet">
</head>
<body>
<nav class="navbar navbar-expand-lg">
<div class="container container-narrow">
<a class="navbar-brand fw-semibold" href="/">CMS Simplifié</a>
<div class="ms-auto">
<a class="btn btn-sm btn-light" href="login.php">Admin</a>
</div>
</div>
</nav>
<main class="container container-narrow py-4">
<h1 class="mb-4">Derniers articles</h1>
<?php if(!$articles): ?>
<div class="alert alert-secondary">Aucun article pour le moment.</div>
<?php else: ?>
<div class="row g-4">
<?php foreach($articles as $a): ?>
<div class="col-12">
<div class="card p-3">
<div class="d-flex justify-content-between align-items-start">
<h5 class="mb-2"><?= htmlspecialchars($a['titre']) ?></h5>
<span class="badge badge-date"><?= htmlspecialchars($a['date_creation']) ?></span>
</div>
<p class="mb-3"><?= nl2br(htmlspecialchars($a['intro'])) ?>...</p>
<a class="btn btn-accent btn-sm" href="article.php?id=<?= (int)$a['id'] ?>">Lire</a>
</div>
</div>
<?php endforeach; ?>
</div>
<?php endif; ?>
</main>
</body>
</html>