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>
4691 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
2 747 vues
Demande d'amis en PHP (2/3)
Dans cette deuxième vidéos nous allons développer notre système de relation d’amitié afin de faire apparaître les bons boutons en fonction de l'état de la relation entre 2 membres.
Créer son site de rencontres
16 324 vues
Connexion PHP
Après avoir créé notre formulaire d'inscription il nous faut créer un formulaire de connexion afin que nos futurs utilisateurs puissent se connecter au site une fois...
Créer son site
2 397 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
710 vues
Les promesses
Les Promesses en JavaScriptLes promesses sont un mécanisme de gestion asynchrone en JavaScript qui permet de gérer plus facilement les opérations asynchrones et d'éviter le "callback hell". Les...
JS
4 610 vues
Utilisation des balises <h1> à <h6> pour les titres
Utilisation des balises <h1> à <h6> pour les titresLes balises <h1> à <h6> sont utilisées pour définir les niveaux de titre dans une page HTML. Elles vont du titre le plus...
HTML
1 510 vues
Flexbox : créer des mises en page flexibles et responsives
Flexbox : Créer des Mises en Page Flexibles et ResponsivesFlexbox est une méthode de disposition en CSS qui permet de créer des mises en page flexibles et responsives. Il offre un contrôle...
CSS
3 484 vues
Comprendre les différentes catégories de commandes SQL
SQL, ou Structured Query Language, est composé de plusieurs catégories de commandes, chacune ayant un rôle spécifique dans la manipulation et la gestion des bases de données relationnelles. Les...
SQL
20 374 vues
Créer un profil PHP
Après avoir créé notre page de connexion et notre page d'inscription il est temps de créer un profil pour votre utilisateur !La page profil permettra plusieurs choses ! D'éditer ses informations...
Créer son site
Publicité
Cette pub permet au site de vivre ...