== Fonctions d'échapement == * ''string'' '''strip_nl'''($chaine : ''string'') => supprime les saut de ligne dans une chaine * __à utiliser normalement sur tous les résultats de formulaire qui ne doivent contenir qu'une seule ligne__ * /!\ ''va être supprimée'' * ''string'' '''escape_smart'''($chaine : ''string'', $strip = '''true''' : ''boolean'', $mode='''ENT_COMPAT''') => échape les caractères spéciaux en html d'une chaine. * si la chaine ne proviens pas de $_GET[] ou $_POST[] il faut indiquer la valeur '''false''' pour $strip * si la chaine est destinée à être traitée par du javascript (example les menus colorés) il faut utiliser '''ENT_QUOTES''' * pour plus de détails sur le paramètre $mode consulter [PHP:htmlspecialchars htmlspecialchars()] * __à utiliser pour toutes les chaînes qui doivent être incluses dans une page html__ * /!\ ''va être supprimée'' * ''string'' '''rawurldecode_smart'''($chaine : ''string'') => décode une url en provenance d'un $_GET[] ou d'un $_POST[] (peu utilisé) * ''string'' '''htmlspecialchars_decode'''($str : ''string'', $quote_style='''ENT_COMPAT''') => décode les caractères spéciaux (html entities) * __à utiliser sur toute chaîne en provenance d'un formulaire avant traitement ou insértion en bdd__ * ''string'' '''quote_smart'''($chaine : ''string'', $strip='''true''' : ''boolean'') => prépare une chaîne à être utilisée pour la construction d'une requête sql. * si la chaîne ne proviens pas de $_GET[] ou $_POST[] il faut indiquer la valeur '''false''' pour $strip * ''Cette fonction est utilisée '''à tors''' en de nombreux endroits pour préparer des nombres. Il faudra ajouter une fonction adaptée'' ([PHP:intval intval()]) * __à utiliser pour toutes les chaînes devant être insérées dans une requête sql__ == Nouvelle API == * ''string'' '''filtrer'''($chaine : ''string'', $flags : ''biltfield'') => encode ou décode une chaîne en fonction des paramètres fournis. * '''FF_STRIP''' : si '''magic_quote_gpc''' est actif,appliquer [PHP:stripslashes stripslashes()] * '''FF_SQUOTE''' : encode les ''single quote'' (les apostrophes ' ) * '''FF_DQUOTE''' : encode les ''double quote'' (les guillemets "e; ) * '''FF_BACKSLASH''' : échappe le backslash ( \ ) * '''FF_SPECIAL''' : encode les caractères spéciaux de HTML ( <, > et & ) * '''FF_NL2BR''' : remplace les saut de ligne de la chaîne par
* '''FF_STRIPNL''' : supprimer les saut de ligne de la chaîne (new line) * '''FF_STRIPTAG''' : supprime toutes les balises HTML (HTML tag) * '''FF_JSCRIPT''' : remplace