Maison > développement back-end > tutoriel php > Comment créer une validation de formulaire parfaite avec PHP

Comment créer une validation de formulaire parfaite avec PHP

王林
Libérer: 2023-06-27 15:56:01
original
1318 Les gens l'ont consulté

Dans le développement Web, la validation du formulaire est un élément très important. Elle peut garantir que les données saisies par l'utilisateur sont conformes au format et aux règles spécifiés, évitant ainsi certaines erreurs inutiles et comportements malveillants. En tant que langage de programmation puissant et populaire, PHP peut implémenter des fonctions de validation de formulaire en écrivant du code. Mais comment créer une validation de formulaire parfaite avec PHP ? Cet article vous présentera en détail les aspects suivants.

1. Appeler la soumission et la vérification du formulaire

Pour utiliser PHP pour implémenter la vérification du formulaire, vous devez d'abord appeler le bouton de soumission dans le formulaire HTML. Dans un formulaire HTML, vous pouvez utiliser la balise <form> pour inclure des éléments de formulaire, tels que <input>, <textarea>, etc. Dans le code PHP, vous devez spécifier la méthode de requête correspondant à la soumission du formulaire, c'est-à-dire $_REQUEST ou $_POST. <form>标签来包含表单元素,例如<input>,<textarea>等。而在PHP代码中需要指定表单提交时所对应的请求方法,即$_REQUEST$_POST

例如,在HTML表单中,假设我们定义了一个文本框,用于输入用户名。那么,在PHP代码中可以这样来调用它的提交和验证:

<?php
if(isset($_REQUEST['submit'])){
$username = $_POST['username'];
//进行验证
}
?>
Copier après la connexion

这里,isset()函数可以检查请求是否存在,并返回truefalse。而$_POST则是指通过POST请求提交的表单数据。

二、验证表单输入数据

在对表单进行验证时,通常需要检查用户的输入数据是否符合指定的格式和规则。例如,对于输入的用户名,我们可以检查它的长度是否超出限制,是否包含非法字符等。常见的表单验证方式如下:

1.检查输入格式:验证输入数据的格式是否符合协议规定。例如,在验证邮箱地址时,可以使用正则表达式来检测其格式是否正确。

if(preg_match('/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$/',$_POST['email'])){
//合法
}
Copier après la connexion

2.检查字符串长度:验证输入字符串的长度是否符合要求。例如,在验证用户名时,可以检查其长度是否在6-20个字符之间。

if( strlen($username) >= 6 && strlen($username) <= 20 ){
//合法
}
Copier après la connexion

3.检查是否为空:验证是否输入了必填字段,并且检测数据是否为空。例如,在验证密码时,可以检查其是否为空。

if(empty($_REQUEST['password'])){
//密码为空,需要填写
}
Copier après la connexion

三、处理表单提交数据

经过验证之后,表单的输入数据已经符合指定的规则和格式了,但是我们还需要将这些数据进行处理,例如保存到数据库中或发送电子邮件等。在PHP代码中,可以使用$_REQUEST$_POST全局变量来获取表单提交的信息,然后对其进行处理。例如:

<?php
if( isset($_REQUEST['submit']) ){
$username = trim($_POST['username']);
$email = trim($_POST['email']);
$password = trim($_POST['password']);

//将数据保存到数据库中
mysqli_query($db,"INSERT INTO user (username,email,password) VALUES ('$username','$email','$password')");

//发送电子邮件
$to = $email;
$subject = '注册成功';
$message = '恭喜您!您已经成功注册本站账户。';
$headers = 'From: webmaster@example.com';
mail($to,$subject,$message,$headers);
}
?>
Copier après la connexion

四、处理错误信息

在进行表单验证时,往往会出现一些错误情况,例如输入的数据格式不正确、必填字段为空等。针对这些错误情况,我们需要及时地反馈给用户,并提示正确的操作步骤。在PHP代码中,可以使用echo语句和die()

Par exemple, dans un formulaire HTML, supposons que nous définissions une zone de texte pour saisir un nom d'utilisateur. Ensuite, sa soumission et sa vérification peuvent être appelées ainsi en code PHP :

if(preg_match('/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$/',$_POST['email'])){
//合法
}else{
echo '输入的邮箱地址不正确,请重新输入!';
die();
}
Copier après la connexion
Ici, la fonction isset() peut vérifier si la requête existe et renvoyer true ou faux. Et $_POST fait référence aux données du formulaire soumises via la requête POST.

2. Vérifier les données saisies dans le formulaire🎜🎜Lors de la validation d'un formulaire, il est généralement nécessaire de vérifier si les données saisies par l'utilisateur sont conformes au format et aux règles spécifiés. Par exemple, pour le nom d'utilisateur saisi, nous pouvons vérifier si sa longueur dépasse la limite, s'il contient des caractères illégaux, etc. Les méthodes courantes de vérification du formulaire sont les suivantes : 🎜🎜1. Vérifiez le format d'entrée : Vérifiez si le format des données d'entrée est conforme au protocole. Par exemple, lors de la validation d'une adresse e-mail, vous pouvez utiliser des expressions régulières pour vérifier si elle est correctement formatée. 🎜rrreee🎜2. Vérifiez la longueur de la chaîne : vérifiez si la longueur de la chaîne d'entrée répond aux exigences. Par exemple, lors de la validation d'un nom d'utilisateur, vous pouvez vérifier si sa longueur est comprise entre 6 et 20 caractères. 🎜rrreee🎜3. Vérifiez s'il est vide : vérifiez si les champs obligatoires sont renseignés et détectez si les données sont vides. Par exemple, lors de la validation d'un mot de passe, vous pouvez vérifier s'il est vide. 🎜rrreee🎜3. Traitement des données de soumission du formulaire🎜🎜Après vérification, les données saisies du formulaire sont déjà conformes aux règles et au format spécifiés, mais nous devons encore traiter les données, comme les enregistrer dans une base de données ou envoyer un e-mail, etc. Dans le code PHP, vous pouvez utiliser les variables globales $_REQUEST et $_POST pour obtenir les informations de soumission du formulaire, puis les traiter. Par exemple : 🎜rrreee🎜 4. Gestion des messages d'erreur 🎜🎜 Lors de la vérification du formulaire, certaines erreurs se produisent souvent, telles que le format des données d'entrée est incorrect, les champs obligatoires sont vides, etc. En réponse à ces situations d'erreur, nous devons fournir des commentaires en temps opportun aux utilisateurs et leur proposer les étapes de fonctionnement correctes. Dans le code PHP, vous pouvez utiliser l'instruction echo et la fonction die() pour afficher les informations d'erreur. L'exemple est le suivant : 🎜rrreee🎜 5. Conclusion 🎜🎜PHP. la vérification du formulaire est un développement Web. C'est une partie très importante du processus de mise en œuvre, et l'expérience utilisateur, la sécurité et la lisibilité du code doivent être pleinement prises en compte pendant le processus de mise en œuvre. En présentant les aspects ci-dessus en détail, je pense que vous pouvez déjà maîtriser l'utilisation de PHP pour créer une validation de formulaire parfaite. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal