48. Validation et Nettoyage des Données de Formulaire
Ne faites jamais confiance aux entrées utilisateur. Avant de traiter ou de stocker des données, vous devez valider (vérifier si elles répondent aux exigences) et nettoyer (supprimer les caractères nuisibles).
1. Validation (Vérification des Exigences)
La validation garantit que les données sont dans le bon format, type et longueur. PHP fournit des fonctions intégrées pour cela.
| Fonction | Description |
|---|---|
empty($var) | Vérifie si une variable est vide (0, chaîne vide, null, false). |
filter_var($var, FILTER_VALIDATE_EMAIL) | Vérifie si l'entrée est un format d'email valide. |
is_numeric($var) | Vérifie si l'entrée est un nombre valide. |
php
2. Nettoyage (Sanitization)
Le nettoyage supprime les caractères illégaux des entrées utilisateur pour prévenir les attaques (comme le XSS).
| Fonction | Description |
|---|---|
trim() | Supprime les espaces blancs de début/fin. |
strip_tags($str) | Supprime les balises HTML et PHP d'une chaîne. |
htmlspecialchars($str) | Convertit les caractères spéciaux en entités HTML, crucial pour l'affichage sécurisé des données utilisateur. |
filter_var($var, FILTER_SANITIZE_STRING) | Supprime ou encode les caractères qui ne sont pas autorisés dans une chaîne. |
php
alert('xss') Hello World"; // Nettoyer en supprimant les balises $clean_data = strip_tags($unsafe_input); echo $clean_data; // Résultat : Hello World // Lors de l'affichage des entrées utilisateur dans le HTML, échappez-les toujours $safe_output = htmlspecialchars($unsafe_input); // Le navigateur affiche le texte, mais n'exécute pas le script ?>