Questions à propos de fonctions sur les chaînes de caractères


tryan
WRInaute passionné
WRInaute passionné
 
Messages: 2355
Inscription: 20 Fév 2005

Questions à propos de fonctions sur les chaînes de caractères

Message le Mar Nov 16, 2010 18:12

Bonsoir,

Questions "nases" mais questions quand même ^^ :

1-Combien de fonctions peut on utiliser bout à bout sur une chaine ?
Ex :
Code: Tout sélectionner
$texte = stripcslashes(htmlspecialchars(trim(strip_tags($_POST["texte"]))));


2-Y a t'il un ordre à respecter ?

3-Quelle est la meilleurs façon de traiter un texte avant insertion en BD (Suppression des balises HTML, traitement des caractères spéciaux, etc...) ?

Merci


reglisse
WRInaute passionné
WRInaute passionné
 
Messages: 1073
Inscription: 15 Nov 2005

Re: Questions à propos de fonctions sur les chaînes de caractères

Message le Mar Nov 16, 2010 18:30

je sais pas si c'est plus efficace d'écrire le tout enchainer comme ça $texte = stripcslashes(htmlspecialchars(trim(strip_tags($_POST["texte"]))));

dans l'ordre il faut supprimer le html puis traiter le texte

jcaron
WRInaute accro
WRInaute accro
 
Messages: 2685
Inscription: 13 Fév 2004

Re: Questions à propos de fonctions sur les chaînes de caractères

Message le Mar Nov 16, 2010 19:08

Tu peux enchaîner autant de fonctions que tu veux, mais tout ne fait pas forcément beaucoup de sens.

Les fonctions à utiliser dépendent beaucoup de ce que tu as décidé de stocker dans ta base. Si tu as décidé de stocker du texte, alors htmlspecialchars n'est pas opportun, il faut le faire à l'affichage. Si tu as décidé de stocker du HTML pré-formaté (même limité à juste quelques entités et éventuellement quelques éléments genre <br>), alors il faut faire le htmlspecialchars et le nl2br. L'important, c'est de savoir ce que tu as décidé de stocker, et d'être cohérent au stockage et à l'affichage (par exemple ne pas refaire un htmlspecialchars sur du html). Les fonctions à utiliser dépendent aussi de ce que tu as en entrée (du texte, du html...).

Le stripcslashes, je ne sais pas très bien quel est l'intérêt ici.

Par contre, il est évidemment impératif d'utiliser mysql_real_escape_string ou équivalent (ou PDO) avant de passer tes données à une requête SQL.

Jacques.


Julia41
WRInaute passionné
WRInaute passionné
 
Messages: 1765
Inscription: 31 Aoû 2007

Re: Questions à propos de fonctions sur les chaînes de caractères

Message le Mar Nov 16, 2010 20:34

Je rejoins l'avis de Jacques.
Perso quand c'est des trucs "énormes" (plus de 3 fonctions) je segmente :
Code: Tout sélectionner
$a = strip_tags($var);
$b = trim($a);
$c = ...

Le tout avec quelques commentaires.
Sinon, depuis cette nuit je tente de :
Code: Tout sélectionner
$texte = stripcslashes(
    htmlspecialchars(
        trim(
             strip_tags(
                 $_POST["texte"]
             )
        )
    )
);

A la "array" like, je sais pas si je garderais ce truc,


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités