Problème affichage messagerie php/Mysql

Résolu/Fermé
Mitrails Messages postés 42 Date d'inscription samedi 7 mars 2015 Statut Membre Dernière intervention 8 avril 2015 - Modifié par Mitrails le 7/03/2015 à 23:32
Mitrails Messages postés 42 Date d'inscription samedi 7 mars 2015 Statut Membre Dernière intervention 8 avril 2015 - 8 mars 2015 à 20:29
Bonsoir à tous !*
j'ai un petite problème concernant une petite messagerie interne dans mon espace membre !

Je viens de me rendre compte que n'importe quel utilisateur peut mettre les scripts qui veut dans le formulaire pour envoyer un message privé à un destinataire ..

en exemple si je vais ds ma boite de reception est qu'une personne ma envoyer un message avec comme texte: "meta http-equiv="refresh" content="2; URL=http://www.CESTTRISTE.com"> et bah forcément ca me redirige sur WWW.CESTTRISTE.COM

Je voudrais savoir comment résoudre ça ?
Voici le script de ma boite de recéption:

<?php 
$sql = 'select * from messages where destinataire = "'.$_SESSION['pseudo'].'"';
$req = mysqli_query($sters,$sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysqli_error());

?>
<table width="100%" border="1" >
<tr><td width="60"><center>Message</center></td>
<td width="250"><center>Sujet</center></td>
<td width="120"><center>Expéditeur</center></td>
<td width="120"><center>Date recéption</center></td>
<td width="80"><center>Supprimer</center></td>
</tr>
<?php
while ($data = mysqli_fetch_array($req)) {


if ($data['lecture'] == 0) // 
{
    
    $message_lu = "<center><img src='../img/newmess.png'></center>";
}
else // SINON
{
    
    $message_lu = "<center><img src='../img/vumess.png'></center>";
}
 echo "<tr><td>";
 echo "<center><span style='color:#696969;font-family:Arial;font-size:17px;'>".$message_lu."</center>"; 
 echo "</td><td>" ;
 echo "<center><span style='color:#696969;font-family:Arial;font-size:17px;'>".$data['sujet']."</center>";
 echo "</td><td>";
 echo "<center><span style='color:#696969;font-family:Arial;font-size:17px;'>".$data['expiration']."</center>" ; 
 echo "</td><td>" ;
 echo "<center><span style='color:#696969;font-family:Arial;font-size:17px;'><em>".$data['date']." ".$data['heure']."</em></center>"; 
 echo "</td><td>" ; 
 echo "<center><span style='color:#696969;font-family:Arial;font-size:17px;'><strong>Supprimer </strong></span> <img src='../img/supp.png' height='15' width='15' ></center>";
 }
 mysqli_free_result ($req);
include('../decomysqli.php');
?>
</table>


En vous remerciant d'avance :)

1 réponse

jordane45 Messages postés 36596 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2022 4 420
8 mars 2015 à 13:20
Bonjour,
ceci répondra à ta question :
https://www.commentcamarche.net/faq/30686-php-erreurs-courantes-injection-sql-xss-upload#protection-xss


0
Mitrails Messages postés 42 Date d'inscription samedi 7 mars 2015 Statut Membre Dernière intervention 8 avril 2015
Modifié par Mitrails le 8/03/2015 à 19:22
Merci désolé du double post je savais pas comment effacer celui la j'avais refait le même mais avec un compte !

j'ai essayé le htmlspecialchars ca fonctionne quand je l'utilise seul mais pour mettre dans le script j'ai une erreur: Parse error: syntax error, unexpected 'htmlspecialchars' (T_STRING), expecting ',' or ';' in /public_html/.../../index.php on line 806
script:


<?php

 echo "<tr><td>";
 echo "<center><span style='color:#696969;font-family:Arial;font-size:17px;'>".$message_lu."</center>"; 
 echo "</td><td>" ;
 echo "<center><span style='color:#696969;font-family:Arial;font-size:17px;'>"htmlspecialchars(.$data['sujet'].)"</center>";
 echo "</td><td>";
 echo "<center><span style='color:#696969;font-family:Arial;font-size:17px;'>"htmlspecialchars(.$data['expiration'].)"</center>" ; 
 echo "</td><td>" ;
 echo "<center><span style='color:#696969;font-family:Arial;font-size:17px;'><em>"htmlspecialchars(.$data['date']." ".$data['heure'].)"</em></center>"; 
 echo "</td><td>" ; 
 echo "<center><span style='color:#696969;font-family:Arial;font-size:17px;'><strong>Supprimer </strong></span> <img src='../img/supp.png' height='15' width='15' ></center>";

?>



Merci
0
jordane45 Messages postés 36596 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2022 4 420 > Mitrails Messages postés 42 Date d'inscription samedi 7 mars 2015 Statut Membre Dernière intervention 8 avril 2015
Modifié par jordane45 le 8/03/2015 à 19:54
Avec les points "." pour la concaténation..ça marche mieux.

 echo "<center><span style='color:#696969;font-family:Arial;font-size:17px;'><em>" . htmlspecialchars($data['date']." ".$data['heure']) . "</em></center>"; 
0
Mitrails Messages postés 42 Date d'inscription samedi 7 mars 2015 Statut Membre Dernière intervention 8 avril 2015 > jordane45 Messages postés 36596 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 1 décembre 2022
8 mars 2015 à 20:29
Ha bah oui ! Merci une fois de plus !
0