Fonction addslashes

Fermé
anthony - 24 mars 2009 à 19:23
 anthony - 24 mars 2009 à 23:07
Bonjour,
voila en faite je suis un train de faire un TP sur le site du zero mais il y 2 fonction que je comprend pas
tout d'abord voila le code :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Bienvenue sur mon site</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <style type="text/css">
        h1, h3
        {
            text-align:center;
        }
        h3
        {
            background-color:black;
            color:white;
            font-size:0.9em;
            margin-bottom:0px;
        }
        .news p
        {
            background-color:#CCCCCC;
            margin-top:0px;
        }
        .news
        {
            width:70%;
            margin:auto;
        }
        </style>
    </head>
    
    <body>
<h1>Bienvenue sur mon site !</h1>
<p>Voici les dernières news :</p>
 
<?php
mysql_connect("localhost", "sdz", "mot_de_passe");
mysql_select_db("coursphp");
// On récupère les 5 dernières news
$retour = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT 0, 5');
while ($donnees = mysql_fetch_array($retour))
{
?>
<div class="news">
    <h3>
        <?php echo $donnees['titre']; ?>
        <em>le <?php echo date('d/m/Y à H\hi', $donnees['timestamp']); ?></em>
    </h3>
    
    <p>
    <?php
    // On enlève les éventuels antislash PUIS on crée les entrées en HTML (<br />)
    $contenu = nl2br(stripslashes($donnees['contenu']));
    echo $contenu;
    ?>
    </p>
</div>
<?php
} // Fin de la boucle des news
?>
</body>
</html>

voila la je voudrais savoir pourquoi il a pas mit addslashes dans echo $donnees['titre'];
A voir également:

3 réponses

IpIpIpIpOne Messages postés 436 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 24 mai 2009 116
24 mars 2009 à 19:27
Salut, ami Terrien !

addslashes sert à ajouter des slashs avant les apostrophes. Par exemple, tu peux utiliser cette fonction avant d'insérer des données dans une base de données. (Ce n'est pas toujours utile, ça dépend si magic_quotes_gpc est à on ou off ton php.ini)

Il n'y a donc aucun intérêt d'utiliser la fonction addslashes après un 'echo'. Pour éventuellement retirer les slashs placés devant les apostrophes, tu peux utiliser la fonction 'stripslashes'.

Cordialement,

IpIpIp Ipone
0
ah oui c'est vraie ta raison merci de ton aide
0
IpIpIpIpOne Messages postés 436 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 24 mai 2009 116
24 mars 2009 à 20:12
No prob, ami Terrien !

Si tu veux, tu peux mettre ton sujet en 'résolu'.
0
Salut,

Utiliser ADDSLASHES() sur une requete sql, c'est ce que l'on appel une FAILLE DE SECURITE

Il faut utiliser mysql_real_escape_string() à la place, mais il existe une faille de sécurité avec aussi

Le seul moyen de zapper ces soucis de sécurité, c'est de passer à PDO !
0
ok mais d'abord c'est quoi PDO
0
anthony > anthony
24 mars 2009 à 23:07
ah oui et aussi pourquoi on utiliserait addslashes sur une requete mysql je ne vois pas l'uiliter
0