espace commentaires
- Accueil
- Forum
- Programmation
- PHP
- espace commentaires
Ce topic est suivi par : didoub74, Doppler, SkinDePewDiePie_
didoub74 Le 10 septembre 2019 à 21:22 (Édité le 15 septembre 2019 à 21:18)
Merci d'avance
SkinDePewDiePie_ Le 11 septembre 2019 à 16:48 (Édité le 11 septembre 2019 à 16:49)
<?php
$bdd = new PDO('mysql:host=127.0.0.1;dbname=...', '...', '...');
if(isset($_GET['id']) AND !empty($_GET['id'])) {
$getid = htmlspecialchars($_GET['id']);
$article = $bdd->prepare('SELECT * FROM articles WHERE id = ?');
$article->execute(array($getid)); $article = $article->fetch();
if(isset($_POST['submit_commentaire'])) {
if(isset($_POST['pseudo'],$_POST['commentaire']) AND !empty($_POST['pseudo']) AND !empty($_POST['commentaire'])) {
$pseudo = htmlspecialchars($_POST['pseudo']);
$commentaire = htmlspecialchars($_POST['commentaire']);
if(strlen($pseudo) < 25) {
$ins = $bdd->prepare('INSERT INTO commentaires (pseudo, commentaire, id_article) VALUES (?,?,?)');
$ins->execute(array($pseudo,$commentaire,$getid));
$c_msg = "<span style='color:green'>Votre commentaire a bien été posté</span>";
} else {
$c_msg = "<span style='color:red'>Erreur: Le pseudo doit faire moins de 25 caractères</span>";
}
} else {
$c_msg = "<span style='color:red'>Erreur: Tous les champs doivent être complétés</span>";
}
}
$commentaires = $bdd->prepare('SELECT * FROM commentaires WHERE id_article = ? ORDER BY id DESC');
$commentaires->execute(array($getid));
?>
<h2>Vidéo N°1 (Section)</h2>
<iframe width="560" height="315" src="https://www.youtube.com/embed/Cmu8SBqUNQY" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe><br /><p><?= $article['contenu'] ?></p><br /><h2>Commentaires:</h2>
<?php if(isset($_SESSION['id'])){ ?>
<form method="POST">
<input type="text" name="pseudo" text="<?= $_SESSION['pseudo'] ?>" /><br />
<textarea name="commentaire" placeholder="Votre commentaire..."></textarea><br />
<input type="submit" value="Poster mon commentaire" name="submit_commentaire" />
</form>
<?php } else{ ?>
Connectez-vous pour poster un commentaire.
<?php } ?>
<?php if(isset($c_msg)) { echo $c_msg; } ?><br /><br />
<?php while($c = $commentaires->fetch()) { ?>
<b><?= $c['pseudo'] ?>:</b> <?= $c['commentaire'] ?><br /><br />
<?php }
} ?>
SkinDePewDiePie_ Le 11 septembre 2019 à 15:17 (Édité le 1 janvier 1970 à 01:00)
-Matteo
didoub74 Le 11 septembre 2019 à 16:05 (Édité le 1 janvier 1970 à 01:00)
Doppler Le 11 septembre 2019 à 16:21 (Édité le 1 janvier 1970 à 01:00)
Utilise des conditions pour mieux gérer le problème :
<?php
if (isset($_SESSION['id'])) { // vérifier si la session existe
// utilisateur connecté
} else {
// utilisateur non connecté
}
?>
~A
SkinDePewDiePie_ Le 11 septembre 2019 à 16:27 (Édité le 1 janvier 1970 à 01:00)
Donc tu peux faire comme ca mais dans ce cas la aussi faire autrement:
<?php if(!isset($_SESSION['id'])){ ?>
Vous devez etre connecté pour envoyer un message
<?php } else { ?>
<textarea placeholder="Votre message"></textarea>
<?php } ?>
didoub74 Le 11 septembre 2019 à 16:33 (Édité le 11 septembre 2019 à 16:41)
<?php
$bdd = new PDO('mysql:host=127.0.0.1;dbname=...', '...', '...');if(isset($_GET['id']) AND !empty($_GET['id'])) {
$getid = htmlspecialchars($_GET['id']);
$article = $bdd->prepare('SELECT * FROM articles WHERE id = ?');
$article->execute(array($getid));
$article = $article->fetch();
if(isset($_POST['submit_commentaire'])) {
if(isset($_POST['pseudo'],$_POST['commentaire']) AND !empty($_POST['pseudo']) AND !empty($_POST['commentaire'])) {
$pseudo = htmlspecialchars($_POST['pseudo']);
$commentaire = htmlspecialchars($_POST['commentaire']);
if(strlen($pseudo) < 25) {
$ins = $bdd->prepare('INSERT INTO commentaires (pseudo, commentaire, id_article) VALUES (?,?,?)');
$ins->execute(array($pseudo,$commentaire,$getid));
$c_msg = "<span style='color:green'>Votre commentaire a bien été posté</span>";
} else {
$c_msg = "<span style='color:red'>Erreur: Le pseudo doit faire moins de 25 caractères</span>";
}
} else {
$c_msg = "<span style='color:red'>Erreur: Tous les champs doivent être complétés</span>";
}
}
$commentaires = $bdd->prepare('SELECT * FROM commentaires WHERE id_article = ? ORDER BY id DESC');
$commentaires->execute(array($getid));
?>
<h2>Vidéo N°1 (Section)</h2>
<iframe width="560" height="315" src="https://www.youtube.com/embed/Cmu8SBqUNQY" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
<br />
<p><?= $article['contenu'] ?></p>
<br />
<h2>Commentaires:</h2>
<form method="POST">
<input type="text" name="pseudo" placeholder="Votre pseudo" /><br />
<textarea name="commentaire" placeholder="Votre commentaire..."></textarea><br />
<input type="submit" value="Poster mon commentaire" name="submit_commentaire" />
</form>
<?php if(isset($c_msg)) { echo $c_msg; } ?>
<br /><br />
<?php while($c = $commentaires->fetch()) { ?>
<b><?= $c['pseudo'] ?>:</b> <?= $c['commentaire'] ?><br /><br />
<?php } ?>
<?php
}
?>
SkinDePewDiePie_ Le 11 septembre 2019 à 16:48 (Édité le 11 septembre 2019 à 16:49)
<?php
$bdd = new PDO('mysql:host=127.0.0.1;dbname=...', '...', '...');
if(isset($_GET['id']) AND !empty($_GET['id'])) {
$getid = htmlspecialchars($_GET['id']);
$article = $bdd->prepare('SELECT * FROM articles WHERE id = ?');
$article->execute(array($getid)); $article = $article->fetch();
if(isset($_POST['submit_commentaire'])) {
if(isset($_POST['pseudo'],$_POST['commentaire']) AND !empty($_POST['pseudo']) AND !empty($_POST['commentaire'])) {
$pseudo = htmlspecialchars($_POST['pseudo']);
$commentaire = htmlspecialchars($_POST['commentaire']);
if(strlen($pseudo) < 25) {
$ins = $bdd->prepare('INSERT INTO commentaires (pseudo, commentaire, id_article) VALUES (?,?,?)');
$ins->execute(array($pseudo,$commentaire,$getid));
$c_msg = "<span style='color:green'>Votre commentaire a bien été posté</span>";
} else {
$c_msg = "<span style='color:red'>Erreur: Le pseudo doit faire moins de 25 caractères</span>";
}
} else {
$c_msg = "<span style='color:red'>Erreur: Tous les champs doivent être complétés</span>";
}
}
$commentaires = $bdd->prepare('SELECT * FROM commentaires WHERE id_article = ? ORDER BY id DESC');
$commentaires->execute(array($getid));
?>
<h2>Vidéo N°1 (Section)</h2>
<iframe width="560" height="315" src="https://www.youtube.com/embed/Cmu8SBqUNQY" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe><br /><p><?= $article['contenu'] ?></p><br /><h2>Commentaires:</h2>
<?php if(isset($_SESSION['id'])){ ?>
<form method="POST">
<input type="text" name="pseudo" text="<?= $_SESSION['pseudo'] ?>" /><br />
<textarea name="commentaire" placeholder="Votre commentaire..."></textarea><br />
<input type="submit" value="Poster mon commentaire" name="submit_commentaire" />
</form>
<?php } else{ ?>
Connectez-vous pour poster un commentaire.
<?php } ?>
<?php if(isset($c_msg)) { echo $c_msg; } ?><br /><br />
<?php while($c = $commentaires->fetch()) { ?>
<b><?= $c['pseudo'] ?>:</b> <?= $c['commentaire'] ?><br /><br />
<?php }
} ?>