PHP Validation de Formulaire - Validation de l'E-mail et de l'URL
- Page précédente Champs obligatoires du formulaire PHP
- Page suivante Formulaires PHP terminés
Cette section montre comment valider le nom, l'e-mail et l'URL.
PHP - Validation du Nom
Le code suivant montre une méthode simple pour vérifier que le champ name contient des lettres et des espaces. Si le champ name est invalide, un message d'erreur est stocké :
$name = test_input($_POST["name"]); if (!preg_match("/^[a-zA-Z ]*$/",$name)) { $nameErr = "Seulement les lettres et les espaces autorisés"; }
Remarque :La fonction preg_match() recherche un modèle dans une chaîne, et retourne true si le modèle existe, sinon false.
PHP - Validation de l'E-mail
Le code suivant montre une méthode simple pour vérifier la syntaxe d'une adresse e-mail. Si l'adresse e-mail est invalide, un message d'erreur est stocké :
$email = test_input($_POST["email"]); if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) { $emailErr = "Format e-mail invalide"; }
PHP - Validation de l'URL
Le code suivant montre une méthode simple pour vérifier la syntaxe d'une adresse URL. Si la syntaxe de l'adresse URL est invalide, un message d'erreur est stocké :
$website = test_input($_POST["website"]); if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%", =~_|]/i,$website)) { $websiteErr = "URL invalide"; }
PHP - Validation du Nom, E-mail et URL
Maintenant, le script est le suivant :
Exemple
<?php // Définir les variables et les définir sur des valeurs vides $nameErr = $emailErr = $genderErr = $websiteErr = ""; $name = $email = $gender = $comment = $website = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { if (empty($_POST["name"])) { $nameErr = "Le nom est obligatoire"; } $name = test_input($_POST["name"]); // Vérification que le nom contient des lettres et des espaces if (!preg_match("/^[a-zA-Z ]*$/",$name)) { $nameErr = "Seulement les lettres et les espaces autorisés"; } } if (empty($_POST["email"])) { $emailErr = "L'e-mail est obligatoire"; } $email = test_input($_POST["email"]); // Vérification de la syntaxe de l'adresse e-mail if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) { $emailErr = "Invalid email format"; } } if (empty($_POST["website"])) { $website = ""; } $website = test_input($_POST["website"]); // Vérifier si l'adresse URL de la langue est valide (cette expression régulière permet également les underscores dans l'URL) if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%", =~_|]/i,$website)) { $websiteErr = "Invalid URL"; } } if (empty($_POST["comment"])) { $comment = ""; } $comment = test_input($_POST["comment"]); } if (empty($_POST["gender"])) { $genderErr = "Gender is required"; } $gender = test_input($_POST["gender"]); } } ?>
Je vais vous expliquer comment éviter que le formulaire ne vide tous les champs d'entrée après que l'utilisateur ait soumis le formulaire.
- Page précédente Champs obligatoires du formulaire PHP
- Page suivante Formulaires PHP terminés