Scrript commentaire

Résolu
jbquentin -  
jbquentin Messages postés 135 Statut Membre -
Bonjour,

Je suis en train de faire un script commentaire, mais je n'arrive pas a afficher les commentaires quand je les envois, pourtant il sont bien dans la base de données.

post.php

<?php
if(isset($_POST['pseudo'])) {

if(empty($_POST['pseudo'])) {

echo "<span style='color:red;'>Veuillez svp saisir votre pseudo</span>";

} elseif(empty($_POST['com'])) {

echo "<span style='color:red;'>Veuillez svp saisir un commentaire</span>";

} else {
//on récupère le pseudo et le commentaire
$commentaire = htmlentities($_POST['com']);
$pseudo = htmlentities($_POST['pseudo']);

//on se connecte a la bdd
mysql_connect("localhost", "root", "");

//on choisit la base de donnée
mysql_select_db("commentaire");

//on ajoute le pseudo et le commentaire dans la table commentaire
mysql_query("INSERT INTO filiformis(pseudo, commentaire) VALUES('$pseudo', '$commentaire')");

//on se déconnecte de mysql
mysql_close();
}
} else {
?>

<html>
<head>
<title>Voir les commentaires</title>
</head>
<body>
<h2>Poster un commentaire:</h2>
<form action="post.php" method="post">
Pseudo: <input type="text" name="pseudo" />
<br />
Commentaire: <textarea style="width:300px;height:150px;" name="com"></textarea>
<br />
<input type="submit" value="Poster le commentaire" />
</form>
<?php
}
?>
</body>
</html>

afich.php
<html>
<head>
<title>Voir les commentaires</title>
</head>
<body>
<?php
//on se connecte a la bdd
mysql_connect("localhost", "root", "");

//on choisit la bdd
mysql_select_db("commentaire");

//on récupère tte la table commentaire et on la met dans une variable $affich
$affich = mysql_query("SELECT * FROM filiformis");

//on liste la table
while($affich = mysql_fetch_array($affich)) {

echo "Pseudo: ".$affich['pseudo']."
<br />
Commentaire: ".$affich['commentaire']."
<hr />";

}
//on se déconnecte de la bdd
mysql_close();
?>
</body>
</html>

Merci

10 réponses

  1. DiabloBros
     
    je crois que le probleme viens de ton while , tu a 2 fois la variable "affich" une fois en requet et une fois en resultat , ca peu pas marcher.
    éssai plutot ...

    //on liste la table
    while($affichResult = mysql_fetch_array($affich)) {

    echo "Pseudo: ".$affichResult['pseudo']."
    <br />
    Commentaire: ".$affichResult['commentaire']."

    __
    _/ \_____________________
    \__/ - diablobros was here -
    1
  2. jbquentin
     
    Merci beaucoup

    Le commentaire s'affiche =)
    0
  3. jbquentin Messages postés 135 Statut Membre
     
    Par contre, comment changer la couleur car sur fond blanc, on ne voit pas ou il faut marquer.

    Merci
    0
  4. DiabloBros
     
    ben le plus simple , moi je ferai avec le css

    ca c'est le css qui va dans le <head>
    <style type="text/css"> 
    <!-- 
    .bkgGris { background-color:#cccccc} 
    --> 
    </style> 
    


    et pour affiché le style il suffit d'appeellé la classe css en rajoutant la balise : class="bkgGris"
    dans les option des balises html

    ex:

    <form action="post.php" method="post"> 
    Pseudo: <input type="text" name="pseudo" class="bkgGris" /> 
    <br /> 
    Commentaire: <textarea class="bkgGris" style="width:300px;height:150px;" name="com"></textarea> 
    <br /> 
    <input type="submit" value="Poster le commentaire" /> 
    </form> 
    
    


    __
    _/ \_____________________
    \__/ - diablobros was here -
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. jbquentin Messages postés 135 Statut Membre
     
    Ok merci beaucoup,

    Et pour espacer les different commentaires?
    Parce que sinon sa fait :

    Pseudo:wdf
    Commentaire:sdfsdf
    Pseudo: sdfdf
    etc..

    Sa ne me met pas d'espace entre les 2 commentaires.

    Merci
    0
  7. DiabloBros
     
    il te manque pas mal de notion avant de te lancer dans des truc comme ca ^^ mais bon alors ...

    en fait c'est assez simple , tu demande a ton script php d'écrire chaque des ligne du tableau les une derriere les autres, en utilisant un while (une boucle) il suffit d'insérré dans cette boucle par exemple un paragraphe <p> </p> , dans le echo (ecriture) du php

    donc tu avais :
    echo "Pseudo: ".$affichResult['pseudo']." 
    <br /> 
    Commentaire: ".$affichResult['commentaire']."  
    


    et il va te falloire un truc du genre:

    echo "<p>Pseudo: ".$affich['pseudo']." 
    <br /> 
    Commentaire: ".$affich['commentaire']." 
    </p> <hr />"; 
    
    

    __
    _/ \_____________________
    \__/ - diablobros was here -
    0
  8. jbquentin Messages postés 135 Statut Membre
     
    Sa marche quand je lance post.php mais quand je suis dans localhost sur mon site sa ne marche pas ..
    0
  9. DiabloBros
     
    t'as changer les info ici ?

    //on se connecte a la bdd 
    mysql_connect("localhost", "root", ""); 
    
    //on choisit la base de donnée 
    mysql_select_db("commentaire");  
    


    dans le genre
    //on se connecte a la bdd 
    mysql_connect("MonSite.com", "Admin", "adminpass"); 
    
    //on choisit la base de donnée 
    mysql_select_db("Nom_de_la_base-de-Donnees");  
    


    __
    _/ \_____________________
    \__/ - diablobros was here -
    0
  10. jbquentin Messages postés 135 Statut Membre
     
    Comme je suis dans localhost j'ai mit :

    //on se connecte a la bdd
    mysql_connect("localhost", "root", "");

    //on choisit la base de donnée
    mysql_select_db("commentaire");
    0
  11. jbquentin Messages postés 135 Statut Membre
     
    up
    0