Poster des commentaires sur vos articles


Nous allons reprendre la page voir_article.php afin d'ajouter un formulaire qui permettra d'écrire un commentaire pour participer à l'article.


Page voir_article.php


Côté PHP


<?php
  /*
    ...
    Code précédent
    ...
  */
    if(!empty($_POST)){
    extract($_POST);
    $valid = true;
 
    if (isset($_POST['ajout-commentaire'])){
      $text  = (String) trim($text); 
      if(empty($text)){
        $valid = false;
        $er_commentaire = "Il faut mettre un commentaire";
      }elseif(iconv_strlen($text, 'UTF-8') <= 3){
        $valid = false;
        $er_commentaire = "Il faut mettre plus de 3 caractères";
      }
 
      $text = htmlentities($text);
 
      if($valid){
        $date_creation = date('Y-m-d H:i:s');
        $DB->insert("INSERT INTO blog_commentaire (id_user, id_blog, text, date_creation) VALUES (?, ?, ?, ?)", 
          array($_SESSION['id'], $get_id, $text, $date_creation));
          header('Location: /blog/' . $get_id);
          exit; 
      }
    }
  }
?>


Côté HTML


<!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 : <?= $req['titre'] ?></title>
    <link rel="stylesheet" href="../css/bootstrap.min.css"/>
    <link rel="stylesheet" href="../css/style.css"/>
  </head>
  <body>
    <?php
      require_once('../menu.php');    
    ?>
    <div class="container">
      <div class="row" style="margin-top: 20px">  
        <div class="col-sm-12 col-md-12 col-lg-12">
          <!-- 
            ...
            Code précédent 
            ...
          -->     
          <?php
            if(isset($_SESSION['id'])){
          ?>
          <div style="background: white; box-shadow: 0 5px 15px rgba(0, 0, 0, .15); padding: 5px 10px; border-radius: 10px; margin-top: 20px">
            <h3>Participer à l'article</h3>
            <?php
              /* S'il y a une erreur sur le nom alors on affiche */
              if (isset($er_commentaire)){
            ?>
            <div class="er-msg"><?= $er_commentaire ?></div>
            <?php   
              }
            ?>
            <form method="post">
              <div class="form-group">
                <textarea class="form-control" name="text" rows="4" placeholder="Écrivez-votre commentaire ..."></textarea>
              </div>
              <div class="form-group">
                <button class="btn btn-primary" type="submit" name="ajout-commentaire">Envoyer</button>
              </div>
            </form>
          </div>
          <?php
            }   
          ?>       
          <div style="background: white; box-shadow: 0 5px 15px rgba(0, 0, 0, .15); padding: 5px 10px; border-radius: 10px; margin-top: 20px">
            <h3>Commentaires</h3>
            <?php
              foreach($req_commentaire as $rc){ 
            ?>  
            <div style="background: #eee; margin-top: 20px; padding: 5px 10px; border-radius: 10px">
              <div style="font-weight: bold"><?= "De " . $rc['nom'] . " " . $rc['prenom']  . " : "?></div>
              <?= nl2br($rc['text']) ?>
              <div style="text-align: right; font-size: 12px; color: #665"><?= $rc['date_c'] ?></div>
            </div>
            <?php
              }
            ?>
          </div>  
        </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>
4769 vues
Modifié le 18 novembre 2019
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
3 848 vues
Formulaire d'inscription en PHP (2/2)
Dans cette deuxième partie nous allons compléter et sécuriser notre formulaire avec différentes conditions.Par exemple nous allons utiliser la function crypt de PHP.Exemple :<?php ...
Créer son site de rencontres
4 938 vues
Le langage CSS
Le CSS permet de concevoir le design de votre site web. Le CSS agit sur des éléments HTML.On peut intégrer le CSS de deux façons :Directement sur les éléments de votre HTML,Mettre le...
Créer son site
1 223 vues
Utilisation de Fetch pour effectuer des requêtes HTTP
Utilisation de Fetch pour Effectuer des Requêtes HTTPLa méthode Fetch est une fonction native de JavaScript utilisée pour effectuer des requêtes HTTP vers des ressources distantes, telles que des...
JS
2 624 vues
Définition des caractéristiques de la base de données : le nom, le jeu de caractères, etc.
1. Accéder à PhpMyAdmin :Ouvrez un navigateur web et accédez à l'URL où vous avez installé PhpMyAdmin sur votre serveur.2. Authentification :Connectez-vous à PhpMyAdmin en utilisant vos...
SQL
1 494 vues
Opérateurs de comparaison (==, !=, <, >, <=, >=)
Les opérateurs de comparaison en PHP sont utilisés pour comparer des valeurs et renvoyer un résultat basé sur la comparaison. Voici les principaux opérateurs de comparaison en PHP :1. Égalité...
PHP
1 637 vues
Gestion des événements : click, submit, keydown, etc.
Gestion des Événements en JavaScriptLa gestion des événements en JavaScript permet d'interagir avec les actions de l'utilisateur sur une page web, telles que les clics de souris, les soumissions...
JS
1 265 vues
Définition et but
Le fichier .htaccess est un outil puissant utilisé sur les serveurs web Apache pour configurer et contrôler divers aspects d'un site web. Son nom provient de "HyperText Access", ce qui signifie...
HTACCESS
1 445 vues
Propriétés CSS : comprendre les différentes propriétés et leurs valeurs
Propriétés CSS : Comprendre les différentes propriétés et leurs valeursLes propriétés CSS sont des instructions qui contrôlent l'apparence et le comportement des éléments HTML sur une page...
CSS
Publicité
Cette pub permet au site de vivre ...