J'ai un soucis au niveau de ma messagerie...
Comme vous pouvez le constater tout es "à" "é" "è" etc... bug...
Vue que ceci ne se produit qu'a la lecture du message j'en conclue que la transformation en caractéres spéciaux à l'entrée dans la BDD ce fait correctement, mais au moment de la lecture les déchifrages ne ce fait pas...
Voila le script de ma messagerie
Citation : Euh... Qui va te soigner si tu meurs?... Va falloir bien te proteger, on essaiera de former un carré autour de toi ou de façon qu tu reste à l'arriere. On essai de trouver une solution sur le forum de l'alliance.
Comme vous pouvez le constater tout es "à" "é" "è" etc... bug...
Vue que ceci ne se produit qu'a la lecture du message j'en conclue que la transformation en caractéres spéciaux à l'entrée dans la BDD ce fait correctement, mais au moment de la lecture les déchifrages ne ce fait pas...
Voila le script de ma messagerie
Code PHP :
<?
session_start();
include('zone-page/haut.php');
include('zone-page/menu-gauche.php');
include('zone-page/droit.php');
include('bdd.php');
include('function.php');
@session_start();
$id =$_SESSION['id'];
$perso =$_SESSION['perso'];
$choix =getvar('az');
echo'<center><a href="messagerie.php?az=1">envoyer un message</a><br/> <a href="messagerie.php?az=2">boite de réception</a><br/> <a href="messagerie.php?az=3">boite d\'envoi</a></center><br><br>';
switch($choix)
{
///////
// ECRIRE MESSAGE
///////
case '1':
echo'<center><form action="messagerie?az=4" method="post">';
echo'<b>Destinataire:</b><br><input size="20" maxlength="30" name="perso"><br><br>';
echo'<b>Sujet:</b><br><input size="15" name="sujet" maxlength="120" value="Sans Titre"><br><br>';
echo'<b>Message:</b><br><textarea name="message" cols="50" rows="10"></textarea><br><br>';
echo'<input type="submit" value="envoyer"></form></center>';
break;
///////
// VOIR MESSAGES
///////
case '2':
$res = $db->extract_one("SELECT id FROM messagerie WHERE id_perso='$id' AND destinataire='1'",'num_rows');
if($res=='0')
{
echo'<center><i>Vous n\'avez pas de message.</i></center>';
}
else
{
$sql= mysql_query("SELECT id,date,id_perso_deuxieme,sujet FROM messagerie WHERE id_perso='$id' AND destinataire='1'");
echo'<table border="1">';
echo'<tr><td width="400">Sujet</td><td width="150">Expéditeur</td><td width="150">date</tr>';
while($message=mysql_fetch_array($sql))
{
$date=$message['date'];
$idperso=$message['id_perso_deuxieme'];
$perso1= $db->extract_one("SELECT joueur_pseudo FROM membres WHERE id='$idperso'");
echo'<tr><td><a href="messagerie.php?az=5&lire='.$message['id'].'">'.$message['sujet'].'</a></td><td>'.$perso1['joueur_pseudo'].'</td><td>'.date("d/m/Y",$date).' à '.date("H:i:s",$date).'</tr>';
}
echo'</table>';
}
break;
///////
// BOITE DENVOIE
///////
case '3':
$res = $db->extract_one("SELECT id FROM messagerie WHERE id_perso='$id' AND destinataire='0'",'num_rows');
if($res=='0')
{
echo'<center><i>Vous n\'avez pas envoyé de message.</i></center>';
}
else
{
$sql= mysql_query("SELECT id,date,id_perso_deuxieme,sujet FROM messagerie WHERE id_perso='$id' AND destinataire='0'");
echo'<table border="1">';
echo'<tr><td width="400">Sujet</td><td width="150">Destinataire</td><td width="150">date</tr>';
while($message=mysql_fetch_array($sql))
{
$date=$message['date'];
$idperso=$message['id_perso_deuxieme'];
$perso1= $db->extract_one("SELECT joueur_pseudo FROM membres WHERE id='$idperso'");
echo'<tr><td><a href="messagerie.php?az=5&lire='.$message['id'].'">'.$message['sujet'].'</a></td><td>'.$perso1['joueur_pseudo'].'</td><td>'.date("d/m/Y",$date).' à '.date("H:i:s",$date).'</tr>';
}
echo'</table>';
}
break;
///////
// ACT ECRIRE MESSAGE
///////
case '4':
$destinataire =secure_string(getvar('perso'));
$sujet =secure_string(getvar('sujet'));
$message =secure_string(getvar('message'));
$res = $db->extract_one("SELECT id FROM membres WHERE joueur_pseudo='$destinataire'",'num_rows');
if($res!='0')
{
$data= $db->extract_one("SELECT id,camp FROM membres WHERE joueur_pseudo='$destinataire'");
$id_destinataire=$data['id'];
$camp_destinataire=$data['camp'];
$perso= $db->extract_one("SELECT id,camp FROM membres WHERE id='$id'");
$camp_perso=$perso['camp'];
if($camp_perso==$camp_destinataire)
{
$chance_denvoie=rand(1,5);
if($chance_denvoie=='1')
{
echo'<center>Message envoyé.</center>';
}
else
{
mysql_query("INSERT INTO messagerie (id_perso, id_perso_deuxieme, sujet , message,vu, date,destinataire) VALUES ( '$id','$id_destinataire','$sujet','$message','1','".time()."' ,'0')");
mysql_query("INSERT INTO messagerie (id_perso, id_perso_deuxieme, sujet , message,vu, date,destinataire) VALUES ( '$id_destinataire','$id','$sujet','$message','0','".time()."' ,'1')");
echo'<center>Message envoyé.</center>';
}
}
else
{
echo'<center>Ce perso est un ennemi.</center>';
}
}
else
{
echo'<center>Le perso n\'existe pas.</center>';
}
break;
///////
// LIRE MESSAGE
///////
case'5':
$message_a_lire=getvar('lire');
$data= $db->extract_one("SELECT * FROM messagerie WHERE id='$message_a_lire'");
// si le message est bien pour le perso.
$id_perso=$data['id_perso'];
if($id==$id_perso)
{
$sql = "UPDATE messagerie SET vu = '1' WHERE id='$message_a_lire'";
$req = mysql_query($sql) or die(mysql_error());
$date=$data['date'];
$id_perso_deuxieme=$data['id_perso_deuxieme'];
$perso1= $db->extract_one("SELECT joueur_pseudo FROM membres WHERE id='$id_perso_deuxieme'");
echo'<b>Message de : </b><i>'.$perso1['joueur_pseudo'].' le '.date("d/m/Y",$date).' à '.date("H:i:s",$date).'.</i>';
echo'<br><b>Sujet :</b><i> '.$data ['sujet'].'</i>';
echo'<br><b>Message :</b><i> '.secure_string($data ['message']).'</i>';
echo'<br><br><font size="3"><a href="messagerie.php?az=6&rep='.$message_a_lire.'">répondre</a> | <a href="messagerie.php?az=7&supr='.$message_a_lire.'">effacer</a></font>';
}
else
{
echo'<center>Ce message ne vous ai pas destiné.</center>';
}
break;
///////
// REPONDRE
///////
case'6':
$rep=getvar('rep');
$data= $db->extract_one("SELECT * FROM messagerie WHERE id='$rep'");
// si le message est bine pour le perso.
$id_perso=$data['id_perso'];
if($id==$id_perso)
{
$id_perso_deuxieme=$data['id_perso_deuxieme'];
$perso1= $db->extract_one("SELECT joueur_pseudo FROM membres WHERE id='$id_perso_deuxieme'");
echo'<center><form action="messagerie?az=4" method="post">';
echo'<b>Destinataire:</b><br><input size="20" maxlength="30" name="perso" value="'.$perso1['joueur_pseudo'].'"><br><br>';
echo'<b>Sujet:</b><br><input size="15" name="sujet" maxlength="120" value="RE : '.$data['sujet'].'"><br><br>';
echo'<b>Message:</b><br><textarea cols="50" rows="10" name="message"></textarea><br><br>';
echo'<input type="submit" value="envoyer"></form></center>';
}
break;
///////
// EFFACER
///////
case'7':
$supr=getvar('supr');
$data= $db->extract_one("SELECT * FROM messagerie WHERE id='$supr'");
// si le message est bien pour le perso.
$id_perso=$data['id_perso'];
if($id==$id_perso)
{
$sql = "DELETE FROM messagerie WHERE id='$supr'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
echo'<center>Message supprimé.</center>';
}
break;
}
include('zone-page/droit2.php');
?>