Petit snippet PHP essentiel pour sécuriser les données envoyées par un formulaire. 
Il permet d’éviter plusieurs attaques courantes comme :

  • XSS (Cross-Site Scripting)
  • injection de code
  • données malveillantes


Toujours nettoyer les entrées utilisateur avant de les afficher ou les enregistrer.


Snippet


function secure($data) {
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    return $data;
}

$name = secure($_POST["name"]);
$email = secure($_POST["email"]);


Explication


trim()


Supprime les espaces inutiles au début et à la fin du texte.


stripslashes()


Retire les barres obliques inverses (\) ajoutées automatiquement dans certains cas.


htmlspecialchars()


Convertit les caractères spéciaux en entités HTML.


Exemple :


<script>alert("hack")</script>

devient


&lt;script&gt;alert("hack")&lt;/script&gt;

Le navigateur ne l’exécutera plus.


Exemple avec un formulaire


HTML


<form method="POST">
<input type="text" name="name">
<button type="submit">Envoyer</button>
</form>

PHP


if($_SERVER["REQUEST_METHOD"] == "POST"){
    $name = secure($_POST["name"]);
    echo $name;
}

Bonnes pratiques supplémentaires


Pour une sécurité encore meilleure :

  • utiliser prepared statements pour les bases de données
  • vérifier les types de données
  • limiter la taille des entrées
  • filtrer les emails avec filter_var()


Idée d’utilisation


  • formulaires de contact 
  • systèmes d’inscription 
  • commentaires de blog 
  • zones de saisie utilisateur

#php #snippet #securiteweb #formulaire #developpementweb #programmation