mysql_escape_string + addslashes(

Eléphanteau du PHP | 27 Messages

19 juin 2008, 15:16

Est-ce que cette formulation me protège des injections php tout en permettant l'échappement des apostrophes ?
$coeur=mysql_escape_string(addslashes($coeur));

Mammouth du PHP | 1668 Messages

19 juin 2008, 15:48

Oui, avec htmlspecialchar() ça fait le même résultat si je me trompe pas...
"À ceux qui poursuivent leurs rêves et se spécialisent dans l'impossible" Joseph Kong

10 ans de PHP, déjà.

"moi jtrouve que katagoto il déchire!" Nagol

ViPHP
AB
ViPHP | 5818 Messages

19 juin 2008, 17:13

Est-ce que cette formulation me protège des injections php tout en permettant l'échappement des apostrophes ?
$coeur=mysql_escape_string(addslashes($coeur));
C'est pas bon. mysql_escape_string va ajouter des slashes donc va faire double emploi avec addslashes. Tu auras trop de slashes insérés dans ton texte.

Eléphanteau du PHP | 27 Messages

19 juin 2008, 17:33

Bon alors j'adopte
$coeur=mysql_escape_string(($coeur);
en croisant les doigts pour que ma base soit à l'abri des injections sql
Modifié en dernier par marcello2 le 19 juin 2008, 17:50, modifié 1 fois.

Mammouth du PHP | 1668 Messages

19 juin 2008, 17:49

htmlspecialchars() mais je ne suis pas sûr, si quelqu'un pouvais confirmer...
"À ceux qui poursuivent leurs rêves et se spécialisent dans l'impossible" Joseph Kong

10 ans de PHP, déjà.

"moi jtrouve que katagoto il déchire!" Nagol

ViPHP
AB
ViPHP | 5818 Messages

19 juin 2008, 19:50

Il est très recommandé d'utiliser mysql_real_escape_string() cf doc http://fr2.php.net/function.mysql-real-escape-string
Cette fonction doit toujours (avec quelques exceptions) être utilisée pour protéger vos données avant d'envoyer la requête à MySQL.