html_entity_decode pour calculer longueur d'une chaine

Eléphant du PHP | 57 Messages

18 sept. 2007, 19:00

Salut,

Pour neutraliser d'éventuels codes html javascripts... rentrés par des utilisateurs indélicats, j'applique la fonction htmlentities() à mes champs.

Le champ "titre" ne peut comporter que 125 caractères.

Pour calculer le nombre de caractères disponibles lorsque je récupère le contenu du champs pour le modifier j'utilise le bout de code suivant :
$calcul_restant = 125-(strlen(html_entity_decode($row[titre])));
Si je calcule la longeur de la chaine sans la "décoder" le nombre est faussé. Je suis donc obligé de décoder la chaine avec la fonction html_entity_decode() pour avoir un compte juste. Je récupère ensuite simplement la valeur calcul_restant.

Est-ce que dans ce cas précis, cela présente un faille de sécurité ? Est-ce qu'un script peut s'exécuter ainsi ?

merci

ViPHP
AB
ViPHP | 5818 Messages

18 sept. 2007, 20:01

A priori non.

Eléphant du PHP | 57 Messages

18 sept. 2007, 20:07

super, merci.