Scrript commentaire

Résolu/Fermé
jbquentin - 25 févr. 2011 à 19:33
jbquentin Messages postés 101 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 31 juillet 2017 - 27 févr. 2011 à 11:20
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
A voir également:

10 réponses

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
Merci beaucoup

Le commentaire s'affiche =)
0
jbquentin Messages postés 101 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 31 juillet 2017
25 févr. 2011 à 20:14
Par contre, comment changer la couleur car sur fond blanc, on ne voit pas ou il faut marquer.

Merci
0
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jbquentin Messages postés 101 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 31 juillet 2017
25 févr. 2011 à 21:04
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
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
jbquentin Messages postés 101 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 31 juillet 2017
25 févr. 2011 à 23:06
Sa marche quand je lance post.php mais quand je suis dans localhost sur mon site sa ne marche pas ..
0
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
jbquentin Messages postés 101 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 31 juillet 2017
26 févr. 2011 à 11:24
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
jbquentin Messages postés 101 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 31 juillet 2017
27 févr. 2011 à 11:20
up
0