J'ai un formulaire avec beaucoup de variables qui est alors l'envoi d'un e-mail, plutôt que de désinfecter chaque $_POST
valeur avec filter_var($_POST['var'], FILTER_SANITIZE_STRING);
Je étais après un morceau de code plus simple. Je suis venu avec le ci-dessous, qui semble fonctionner comme je crois que l'action par défaut est FILTER_SANITIZE_STRING
, mais je me demandais juste ce que les opinions des gens sont, et si ce n'est pas une bonne pratique, peut-être pourriez-vous me dire pourquoi? Les $_POST
valeurs sont ensuite intégrées individuellement dans de nouvelles variables, donc je n'utiliseront array_map juste au début de désinfectez tout ...
$_POST = array_map('filter_var', $_POST);
Merci pour vos réponses, pour vous donner un peu plus d'informations, essentiellement :
Je 20-30 champs d'entrée sous une forme qui sont piégées, les données sont ensuite affichées à l'utilisateur de vérifier leur entrée, variables sont alors aseptisé, l'utilisateur est alors envoyé un e-mail et puis enfin les détails sont entrés dans un db.
Actuellement, je désinfecte en utilisant la fonction array_map ci-dessus, ainsi que FILTER_SANITIZE_EMAIL sur l'adresse e-mail avant d'envoyer un email, puis d'échapper l'entrée en utilisant mysql_real_escape_string() avant l'insertion dans la base de données. Sans entrer dans des déclarations préparées, etc. pensez-vous que je devrais faire quelque chose en plus? Merci encore!
Pour Désinfectez la chaîne, est ici une fonction utile - http://stackoverflow.com/questions/3126072/what-are-the-best-php-input-sanitizing-functions/20403438#20403438 –
duplication possible de [PHP -Sanitize valeurs d'un ar ray] (http://stackoverflow.com/questions/4861053/php-sanitize-values-of-a-array) – feeela