par
Grepher76380 » 26 mai 2013, 20:19
Bonjour,
Voici mon problèmes :
Après avoir lu un tuto sur comment ajouté un systèmes de commentaire, je suis arrivée à le faire et même modifier pour un truck plus jolie. Mais j'ai un soucis d'encodage, mes "é" devienne des "é".
Voici mes code:
page addcom.php
<?php
if(!empty($_POST['pseudo']) and isset($_POST['mail']) and isset($_POST['contenu'])){
require "news/config.php";
mysql_connect($adresse, $nom, $motdepasse);
mysql_select_db($database);
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST["pseudo"]));
$contenu = htmlspecialchars($_POST['contenu']);
$contenu = nl2br($contenu);
$contenu = mysql_escape_string($contenu);
$mail = mysql_real_escape_string(htmlspecialchars($_POST["mail"]));
$url = mysql_real_escape_string(htmlspecialchars($_POST["url"]));
$id_news = $_POST["id_news"];
$sql="INSERT INTO commentaires (pseudo,url,mail,contenu,id_news) VALUES ('$pseudo','$url','$mail','$contenu','$id_news')";
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
echo "votre commentaire à était posté.";
header("refresh:5;url=services.php");
}else{
echo "Les champs obligatoire ne sont pas remplis ...<br />";
echo "Vous allez être redirigé vers la page news dans 5 secondes.";
header("refresh:5;url=services.php");
}
?>
et voici ma page news :
<?php
/*
Connexion � la BDD
*/
require "news/config.php";
mysql_connect($adresse, $nom, $motdepasse);
mysql_select_db($database);
mysql_query("SET NAMES UTF8");
/*
Affichage d'une news en particulier
*/
if(isset($_GET['id'])){
$id =$_GET['id'];
/*
Si l'id !=0, intval renvoie quelque chose de bon
*/
if($id != 0){
$sql = 'SELECT * FROM news WHERE id='.$id.'';
$req = mysql_query($sql) or die(mysql_error());
$data = mysql_fetch_assoc($req);?>
<table border="1" width="100%" bordercolorlight="#000000" bordercolordark="#000000" style="border-collapse: collapse" bgcolor="#E6E6E6" cellpadding="0" cellspacing="0">
<tr><td style='text-align:left;'><h6><a><?php echo stripslashes($data['titre']);?></a></h6></td><td style='text-align:right;'><h7><b>écrit le : <?php echo date("d/m/Y à G:i", strtotime($data['date'])); ?>, Par : Grepher76</b></h7></td></tr>
</table><hr />
<p><b><?php echo stripslashes($data['contenu']); ?></b></p><br /><hr />
<h2><center>Commentaire :</center></h2>
<?php
$sql = 'SELECT * FROM commentaires WHERE id_news='.$id.' ORDER BY id ASC';
$req = mysql_query($sql) or die(mysql_error());
while($data2=mysql_fetch_assoc($req)){
echo "<img src=\"images/commentaire.png\" width=\"25\" hight=\"25\"><b> Posté par ".stripslashes($data2['pseudo'])." :</b>";
echo "<p>".stripslashes($data2['contenu'])."</p>";
echo "<hr />";
}
?>
<u><center><h2>Ajouter un commentaire :</u></h2><br />
<form action="addcom.php" method="post">
Pseudo : *<br /><input type="text" name="pseudo" /><br />
URL : <br /><input type="text" name="url" /><br />
E-mail : *<br /><input type="text" name="mail" /><br /><br />
Commentaire : *<br /><textarea name="contenu" style="width:500px; height:200px;"></textarea><br /><br />
<input type="submit" name="envoyer" value="Envoyer" />
<input type="hidden" name="id_news" value="<?php echo $data['id']; ?>" /></center><br /><br />
* champs obligatoire
</form><hr />
<div align="center"><a href="http://miki-heberg.com/">Retour au Site</a></div>
<?php
}
/*
id ==0, intval renvoie certainement qqch de faux
*/
else
{
echo "Erreur";
}
}
/*
Listage des 5 derni�¨res news
*/
else
{
$sql = "SELECT COUNT(id) as nbArt FROM news";
$req = mysql_query($sql) or die(mysql_error());
$data = mysql_fetch_assoc($req);
$nbArt = $data['nbArt'];
$perPage = 5;
$nbPage = ceil($nbArt/$perPage);
if(isset($_GET['p']) && $_GET['p']>0 && $_GET['p']<=$nbPage){
$cPage = $_GET['p'];
}
else{
$cPage =1;
}
$sql = "SELECT * FROM news ORDER BY date DESC LIMIT ".(($cPage-1)*$perPage).",$perPage";
$req = mysql_query($sql) or die(mysql_error());
echo '<center><h1>Les dernières news !</h1></center><br /><br /><hr />';
while($data = mysql_fetch_assoc($req)) { ?>
<table border="1" width="100%" bordercolorlight="#000000" bordercolordark="#000000" style="border-collapse: collapse" bgcolor="#E6E6E6" cellpadding="0" cellspacing="0">
<tr><td style='text-align:left;'><h6><a href="services.php?id=<?php echo $data['id']; ?>"><?php echo stripslashes($data['titre']);?></a></h6></td><td style='text-align:right;'><h7><b>écrit le : <?php echo date("d/m/Y à G:i", strtotime($data['date'])); ?>, Par : Grepher76</b></h7></td></tr>
</table><hr />
<p><b><?php echo stripslashes($data['description']); ?></b></p><br />
<b><p style='text-align:right;'><a href="services.php?id=<?php echo $data['id']; ?>"><span><span>Lire La suite ...</span></span></a></b></p><hr /><br />
<?php
}
echo '<center><p>[ Page :';
// Boucle sur les pages
for ($i = 1 ; $i <= $nbPage ; $i++) {
if ($i == $cPage ){
echo " $i ";
}
else{
echo " <a href=\"?p=$i\">$i</a> ";
}
}
echo ' ]</center></p>';
}
?>
Mes base de donnée sont en "utf8_general_ci".
mon site en utf-8.
Je c'est pas d'ou cela provient pouvez vous m'aider ?
Cordialement Grepher76380
Bonjour,
Voici mon problèmes :
Après avoir lu un tuto sur comment ajouté un systèmes de commentaire, je suis arrivée à le faire et même modifier pour un truck plus jolie. Mais j'ai un soucis d'encodage, mes "é" devienne des "é".
Voici mes code:
page addcom.php
[php]<?php
if(!empty($_POST['pseudo']) and isset($_POST['mail']) and isset($_POST['contenu'])){
require "news/config.php";
mysql_connect($adresse, $nom, $motdepasse);
mysql_select_db($database);
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST["pseudo"]));
$contenu = htmlspecialchars($_POST['contenu']);
$contenu = nl2br($contenu);
$contenu = mysql_escape_string($contenu);
$mail = mysql_real_escape_string(htmlspecialchars($_POST["mail"]));
$url = mysql_real_escape_string(htmlspecialchars($_POST["url"]));
$id_news = $_POST["id_news"];
$sql="INSERT INTO commentaires (pseudo,url,mail,contenu,id_news) VALUES ('$pseudo','$url','$mail','$contenu','$id_news')";
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
echo "votre commentaire à était posté.";
header("refresh:5;url=services.php");
}else{
echo "Les champs obligatoire ne sont pas remplis ...<br />";
echo "Vous allez être redirigé vers la page news dans 5 secondes.";
header("refresh:5;url=services.php");
}
?>[/php]
et voici ma page news :
[php]<?php
/*
Connexion � la BDD
*/
require "news/config.php";
mysql_connect($adresse, $nom, $motdepasse);
mysql_select_db($database);
mysql_query("SET NAMES UTF8");
/*
Affichage d'une news en particulier
*/
if(isset($_GET['id'])){
$id =$_GET['id'];
/*
Si l'id !=0, intval renvoie quelque chose de bon
*/
if($id != 0){
$sql = 'SELECT * FROM news WHERE id='.$id.'';
$req = mysql_query($sql) or die(mysql_error());
$data = mysql_fetch_assoc($req);?>
<table border="1" width="100%" bordercolorlight="#000000" bordercolordark="#000000" style="border-collapse: collapse" bgcolor="#E6E6E6" cellpadding="0" cellspacing="0">
<tr><td style='text-align:left;'><h6><a><?php echo stripslashes($data['titre']);?></a></h6></td><td style='text-align:right;'><h7><b>écrit le : <?php echo date("d/m/Y à G:i", strtotime($data['date'])); ?>, Par : Grepher76</b></h7></td></tr>
</table><hr />
<p><b><?php echo stripslashes($data['contenu']); ?></b></p><br /><hr />
<h2><center>Commentaire :</center></h2>
<?php
$sql = 'SELECT * FROM commentaires WHERE id_news='.$id.' ORDER BY id ASC';
$req = mysql_query($sql) or die(mysql_error());
while($data2=mysql_fetch_assoc($req)){
echo "<img src=\"images/commentaire.png\" width=\"25\" hight=\"25\"><b> Posté par ".stripslashes($data2['pseudo'])." :</b>";
echo "<p>".stripslashes($data2['contenu'])."</p>";
echo "<hr />";
}
?>
<u><center><h2>Ajouter un commentaire :</u></h2><br />
<form action="addcom.php" method="post">
Pseudo : *<br /><input type="text" name="pseudo" /><br />
URL : <br /><input type="text" name="url" /><br />
E-mail : *<br /><input type="text" name="mail" /><br /><br />
Commentaire : *<br /><textarea name="contenu" style="width:500px; height:200px;"></textarea><br /><br />
<input type="submit" name="envoyer" value="Envoyer" />
<input type="hidden" name="id_news" value="<?php echo $data['id']; ?>" /></center><br /><br />
* champs obligatoire
</form><hr />
<div align="center"><a href="http://miki-heberg.com/">Retour au Site</a></div>
<?php
}
/*
id ==0, intval renvoie certainement qqch de faux
*/
else
{
echo "Erreur";
}
}
/*
Listage des 5 derni�¨res news
*/
else
{
$sql = "SELECT COUNT(id) as nbArt FROM news";
$req = mysql_query($sql) or die(mysql_error());
$data = mysql_fetch_assoc($req);
$nbArt = $data['nbArt'];
$perPage = 5;
$nbPage = ceil($nbArt/$perPage);
if(isset($_GET['p']) && $_GET['p']>0 && $_GET['p']<=$nbPage){
$cPage = $_GET['p'];
}
else{
$cPage =1;
}
$sql = "SELECT * FROM news ORDER BY date DESC LIMIT ".(($cPage-1)*$perPage).",$perPage";
$req = mysql_query($sql) or die(mysql_error());
echo '<center><h1>Les dernières news !</h1></center><br /><br /><hr />';
while($data = mysql_fetch_assoc($req)) { ?>
<table border="1" width="100%" bordercolorlight="#000000" bordercolordark="#000000" style="border-collapse: collapse" bgcolor="#E6E6E6" cellpadding="0" cellspacing="0">
<tr><td style='text-align:left;'><h6><a href="services.php?id=<?php echo $data['id']; ?>"><?php echo stripslashes($data['titre']);?></a></h6></td><td style='text-align:right;'><h7><b>écrit le : <?php echo date("d/m/Y à G:i", strtotime($data['date'])); ?>, Par : Grepher76</b></h7></td></tr>
</table><hr />
<p><b><?php echo stripslashes($data['description']); ?></b></p><br />
<b><p style='text-align:right;'><a href="services.php?id=<?php echo $data['id']; ?>"><span><span>Lire La suite ...</span></span></a></b></p><hr /><br />
<?php
}
echo '<center><p>[ Page :';
// Boucle sur les pages
for ($i = 1 ; $i <= $nbPage ; $i++) {
if ($i == $cPage ){
echo " $i ";
}
else{
echo " <a href=\"?p=$i\">$i</a> ";
}
}
echo ' ]</center></p>';
}
?>[/php]
Mes base de donnée sont en "utf8_general_ci".
mon site en utf-8.
Je c'est pas d'ou cela provient pouvez vous m'aider ?
Cordialement Grepher76380