- Code: Tout sélectionner
<h1>COMMENTAIRES</h1>
<?php
$dbhost = '------';
$dblogin = '-------';
$dbpassword = '-------' ;
$dbname = '-------';
mysql_connect($dbhost,$dblogin,$dbpassword);
mysql_select_db($dbname);
$infos = mysql_query('SELECT * FROM commentaires WHERE idnews=' . $_GET['idnews'] . ' ORDER BY id DESC'); /*Ici on liste les commentaires dans l'ordre décroissant où le champ idnews est le même que celui de la variable contenue dans l'adresse de la page*/
while ($donnees = mysql_fetch_array($infos)) /*Une boucle pour écrire les données*/
{
$pseudo = stripslashes($donnees['pseudo']);
$message = stripslashes($donnees['message']);
?>
<p><strong><?php echo $pseudo; ?></strong> a commenté :<br /><?php echo $message; ?></p>
<?php
} /*On oublie surtout pas de fermer la boucle ! */
if (isset($_POST['pseudo']) AND isset($_POST['message']))
{
if($_POST['pseudo'] != '' AND $_POST['message'] != '')
{
$pseudo = addslashes(htmlentities($_POST['pseudo'], ENT_QUOTES));
$message = addslashes(htmlentities($_POST['message'], ENT_QUOTES));
$idcomment = $_POST['idcomment']; /* Tout ce charabia est une petite vérification : on fait attention à ce que l'auteur ait rempli tous les champs. Quels champs ? Ceux du formulaire que l'on va créer un peu plus bas :)*/
mysql_query ("INSERT INTO commentaires VALUES('', '" . $pseudo . "', '" . $message . "', '" . $idcomment . "')"); /* Là, on entre juste les données dans une nouvelle entrée de la table SQL...*/
echo "Merci d'avoir commenté !";
}
}
?>
<form method="post">
<p>
<label>Votre pseudo : <input type="text" name="pseudo" /><br/></label>
<label>Laissez votre message ! <br/>
<textarea name="message" rows="5" cols="25"></textarea><br/></label>
<br/><br/>
<input type="hidden" name="idcomment" value="<?php echo $_GET['idnews']; ?>" />
<input type="submit" value="Envoyer !" />
</p>
</form>
<?php mysql_close(); ?>
Salut. Alors ça, c'est mon script de commentaires qui bug. J'explique: je post le commentaire ... tout vas bien ... le commentaire s'affiche mais un problème s'impose: au lieu de d'afficher sur la news qu'elle concerne, elle s'affiche sur toutes les news. Donc voilà je fais à nouveau recours au site pour m'aider à résoudre mon problème.