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>
4865 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
2 285 vues
Charger automatiquement les messages
Après avoir amélioré l'envoi de nos messages nous allons également améliorer le système de recharge automatique pour l’affichage de nouveau message.
Créer son site de rencontres
2 264 vues
Comprendre la syntaxe pour insérer des données dans des colonnes spécifiques ou dans toutes les colonnes
1. Insertion de Données dans Toutes les Colonnes :Pour insérer des données dans toutes les colonnes d'une table, voici la syntaxe générale :INSERT INTO nom_de_la_table VALUES (valeur_colonne1,...
SQL
1 518 vues
Utilisation de la propriété display pour contrôler le type d'affichage des éléments
La propriété display en CSS permet de contrôler le type d'affichage d'un élément. Elle détermine comment l'élément est rendu dans le flux de la page. Il existe plusieurs valeurs pour la...
CSS
714 vues
Utilisation des éléments de division <div> et <span> pour structurer le contenu
Utilisation des éléments de division <div> et <span> pour structurer le contenuLes balises <div> et <span> sont des éléments de division utilisés pour structurer et...
HTML
2 073 vues
Configurer l'environnement de développement
Configuration de l'environnement de développement pour SASS1. Création d'une structure de projet :Avant de commencer à coder en SASS, il est important d'avoir une structure de projet organisée....
Sass
882 vues
Création d'un fichier .htaccess
Le fichier .htaccess est un élément important pour configurer et personnaliser un site web sur un serveur Apache. Dans ce cours, nous allons apprendre comment créer un fichier .htaccess de...
HTACCESS
8 934 vues
Barre de recherche : Complète
Barre de rechercheMaintenant que notre formulaire et que notre script sont fait, nous allons créer une nouvelle page PHP que l'on nommera recherche_utilisateur.php.Dans cette page...
Créer son site
461 vues
Les callbacks
Les Callbacks en JavaScriptLes callbacks sont des fonctions passées en tant qu'arguments à d'autres fonctions, qui seront exécutées ultérieurement ou de manière asynchrone. Les callbacks sont...
JS
Publicité
Cette pub permet au site de vivre ...