Mise en page


Pour commencer nous allons créer la page maître de notre blog. C'est cette page qui contiendra tous les articles qui constituerons notre blog.

Tout d'abord nous allons créer un dossier que nous appellerons f_blog. Ensuite, nous allons créer une nouvelle page que l'on nommera blog.php à l'intérieur du dossier f_blog.

Dans notre fichier menu.php que nous avons déjà créer auparavant nous allons ajouter un lien qui nous permettra d'accéder à notre nouvelle page blog.php


Page menu.php


<li class="nav-item">
  <a class="nav-link" href="blog">Blog</a>
</li>


Nous allons également modifier notre fichier .htaccess afin d'appliquer l'URL souhaitée.


Fichier .htaccess


RewriteRule ^blog$ f_blog/blog


Ensuite dans notre page blog.php nous allons afficher tous les articles.


Page blog.php


<?php
  session_start();
  include('../bd/connexionDB.php'); // Fichier PHP contenant la connexion à votre BDD

  $req = $DB->query("SELECT b.*, u.prenom, u.nom, c.titre as titre_cat
    FROM blog b
    LEFT JOIN utilisateur u ON u.id = b.id_user
    LEFT JOIN categorie c ON c.id_categorie = b.id_categorie
    ORDER BY b.date_creation DESC");

  $req = $req->fetchAll();
?>

<!DOCTYPE html>
<html>
<head><base href="/"/><meta charset="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><title>Blog</title><link rel="stylesheet" href="../css/bootstrap.min.css"/><link rel="stylesheet" href="../css/style.css"/>
</head>

  <body><?phprequire_once('../menu.php');    
    ?>
  
    <div class="container"><div class="row">   
  
        <div class="col-sm-0 col-md-0 col-lg-0"></div><div class="col-sm-12 col-md-12 col-lg-12"><h1 style="text-align: center">Mon blog</h1>
  
          <?phpif(isset($_SESSION['id']) && $_SESSION['role'] == 1){
          ?><a href="blog/creer-mon-article" class="btn btn-primary btn-lg active" role="button" aria-pressed="true">Créer un article</a><?php
              }
            ?><?phpforeach($req as $r){ 
              ?>  
                <div style="margin-top: 20px; background: white; box-shadow: 0 5px 10px rgba(0, 0, 0, .09); padding: 5px 10px; border-radius: 10px"><a href="blog/<?= $r['id'] ?>" style="color: #666; text-decoration: none; font-size: 28px;"><?= $r['titre'] ?></a><div style="border-top: 2px solid #EEE; padding: 15px 0"><?= nl2br($r['text']); ?></div><a href="blog/<?= $r['id'] ?>">Voir plus</a> 
                  <div style="padding-top: 15px; color: #ccc; font-style: italic; text-align: right;font-size: 12px;">
                    Fait par  <?= $r['nom'] . " " . $r['prenom'] ?> le <?= date_format(date_create($r['date_creation']), 'D d M Y à H:i'); ?> dans le thème <?= $r['titre_cat'] ?></div></div>  
              <?php
              }
            ?>              
        </div></div></div>
    
    <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script><script src="../js/bootstrap.min.js"></script></body>
</html>
4760 vues
Modifié le 29 juin 2021
Publicité Sitedudev
Cette pub permet au site de vivre ...
Vidéo associée
Publicité Sitedudev
Cette pub permet au site de vivre ...
Télécharger le code source
Publicité
Cette pub permet au site de vivre ...
Voir d'autres articles
446 vues
Déclaration de fonctions
Déclaration de Fonctions en JavaScriptEn JavaScript, les fonctions sont des blocs de code réutilisables qui peuvent être appelés pour effectuer une tâche spécifique. Elles peuvent prendre des...
JS
565 vues
Les pseudo-classes et pseudo-éléments pour le stylisme conditionnel
Les Pseudo-Classes et Pseudo-Éléments pour le Stylisme ConditionnelEn CSS, les pseudo-classes et les pseudo-éléments permettent d'appliquer des styles à des éléments HTML en fonction de leur...
CSS
356 vues
Vue d'ensemble de frameworks populaires comme React, Angular, et Vue.js
Vue d'ensemble des Frameworks Populaires : React, Angular et Vue.jsLes frameworks JavaScript tels que React, Angular et Vue.js sont largement utilisés pour le développement d'applications web...
JS
1 052 vues
Utilisation des clauses WHERE, ORDER BY, GROUP BY et LIMIT pour filtrer et trier les résultats
1. Utilisation de la Clause WHERE pour Filtrer les Résultats :La clause WHERE est utilisée pour filtrer les résultats en fonction de certaines conditions.SELECT colonne1, colonne2, ... FROM...
SQL
364 vues
Syntaxe des Directives
Chaque directive dans le fichier .htaccess suit une syntaxe spécifique pour fonctionner correctement. Comprendre cette syntaxe est essentiel pour utiliser efficacement les directives dans votre...
HTACCESS
18 451 vues
Mot de passe oublié en PHP
Il arrivera souvent qu'un utilisateur oublie son mot de passe. Pour y remédiez nous allons modifier notre base de données avec un nouveau paramètre nous permettant de savoir si...
Créer son site
592 vues
Déclarations CSS : comment les combiner pour styliser les éléments
Déclarations CSS : Comment les combiner pour styliser les élémentsLes déclarations CSS sont des instructions individuelles qui spécifient le style des éléments HTML sur une page Web. Elles...
CSS
582 vues
Instructions conditionnelles (if, else, elseif)
Les instructions conditionnelles en PHP permettent d'exécuter des blocs de code en fonction de certaines conditions. Les trois principales structures conditionnelles en PHP sont if, else et elseif....
PHP
Publicité
Cette pub permet au site de vivre ...