Maison  >  Article  >  développement back-end  >  Validation en PHP

Validation en PHP

王林
王林original
2024-08-29 13:08:43567parcourir

La validation en PHP est le processus par lequel nous vérifions si les informations saisies dans les différents champs sous quelque forme que ce soit, comme du texte, une case à cocher ou un bouton radio, etc., soumises par l'utilisateur final dans le formulaire sont correctes ou n'utilisent pas de code HTML. .

PUBLICITÉ Cours populaire dans cette catégorie DEVELOPPEUR PHP - Spécialisation | Série de 8 cours | 3 tests simulés

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

Il existe 2 types de validation disponibles en PHP :

  1. Validation côté client : Ce type de validation est effectué sur le navigateur Web de la machine client.
  2. Validation côté serveur : Les données lors de la soumission sont ensuite envoyées à la machine serveur pour y effectuer des contrôles de validation.

Règles de validation en PHP

Il existe certaines règles de validation d'un formulaire et elles sont les suivantes pour les champs suivants :

  • Nom : C'est un champ obligatoire dont les données ne contiennent que des espaces et des lettres.
  • E-mail : Il s'agit également d'un champ obligatoire qui doit contenir une adresse e-mail valide, ce qui signifie qu'elle doit être au format [email protected].
  • Site Web : Il s'agit d'un champ facultatif et doit contenir une URL valide si elle est indiquée
  • Commentaire : C'est un champ facultatif et c'est une saisie de texte multiligne où l'on peut donner de longues phrases.
  • Genre : C'est un champ obligatoire et doit sélectionner un sexe parmi le féminin, le masculin et l'autre.

Types de validation en PHP

Voyons maintenant comment valider différents types de tels champs.

1. Validation des champs de texte

Il existe quelques champs de texte pour les attributs mentionnés ci-dessus, tels que le nom, l'adresse e-mail, le site Web et le commentaire. Le code HTML correspondant est le suivant :

Code :

<blockquote>
<p>Name : <input name="name" type="text" /> <br /><br /> E-mail : <input name="email" type="text" /><br /><br /> Website: <input name="website" type="text" /><br /><br /> Comment: <textarea cols="40" name="comment" rows="5"></textarea></p>
</blockquote>

Sortie :

Validation en PHP

Explication du programme ci-dessus : Ici, nous pouvons personnaliser ces noms d'attributs comme nous le souhaitons en utilisant différentes balises d'en-tête et également des balises d'espace. Nous avons montré ici l'une des options de format de paragraphe pour celle-ci.

2. Validation des boutons radio

Les boutons radio sont essentiellement ceux qui ont une valeur booléenne vraie ou fausse et ils sont représentés par une sorte de boîte circulaire. Si la case est encerclée, cela signifie vrai et vice versa. Vérifions le code HTML pour implémenter la même chose pour l'attribut « Genre » ci-dessus.

Code :

Gender:<br /><br />
<input type="radio" name="gender" value="female">Female<br /><br />
<input type="radio" name="gender" value="male">Male<br /><br />
<input type="radio" name="gender" value="other">Other

Sortie :

Validation en PHP

Explication du programme ci-dessus : En utilisant ce code, nous affichons 3 options sous la catégorie de genre : homme, femme et autre. L'utilisateur peut encercler l'option souhaitée en cliquant sur le cercle et l'option sera enregistrée et validée.

3. Validation de l'élément de formulaire

Cette méthode est utilisée à la fin une fois que tous les détails requis ont été remplis pour soumettre le formulaire. En utilisant ce code HTML, les données du formulaire une fois soumises sont envoyées avec la méthode « post ». Il y a essentiellement 2 attributs que nous devons spécifier lors de la validation de l'élément de formulaire : l'action et la méthode. Nous pouvons convertir certains attributs HTML en leurs noms d'entités respectifs afin d'éviter que le formulaire ne se brise lorsque l'utilisateur le soumet. « action » détermine où les données du formulaire sont envoyées lors de la soumission et « méthode » définit comment les données du formulaire sont soumises.

Code :

<form method="POST"
action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">

Vérifions toute une forme de validation en combinant tous les différents types de validation que nous avons appris ci-dessus :

Code :

<!DOCTYPE HTML>
<html>
<head>
<style>
.Error {color: #FF0000;}
</style>
</head>
<body>
<?php
// we are defining variables here and setting their default values to zero
$nameError = $emailError = $genderError = $websiteError = "";
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameError = "Name is mandatory";
} else {
$name = test_input($_POST["name"]);
}
if (empty($_POST["email"])) {
$emailError = "Email is mandatory";
} else {
$email = test_input($_POST["email"]);
}
if (empty($_POST["website"])) {
$website = "";
} else {
$website = test_input($_POST["website"]);
}
if (empty($_POST["comment"])) {
$comment = "";
} else {
$comment = test_input($_POST["comment"]);
}
if (empty($_POST["gender"])) {
$genderError = "Gender is mandatory";
} else {
$gender = test_input($_POST["gender"]);
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<h2>PHP Form Validation Example</h2>
<p><span class="Error">* mandatory field</span></p>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Name: <input type="text" name="name">
<span class="Error">* <?php echo $nameError;?></span>
<br><br>
E-mail: <input type="text" name="email">
<span class="Error">* <?php echo $emailError;?></span>
<br><br>
Website: <input type="text" name="website">
<span class="Error"><?php echo $websiteError;?></span>
<br><br>
Comment: <textarea name="comment" rows="5" cols="40"></textarea>
<br><br>
Gender:
<input type="radio" name="gender" value="female">Female
<input type="radio" name="gender" value="male">Male
<input type="radio" name="gender" value="other">Other
<span class="Error">* <?php echo $genderError;?></span>
<br><br>
<input type="submit" name="submit" value="Submit">
</form>
<?php
echo "<h2>Your Input:</h2>";
echo $name;
echo "<br>";
echo $email;
echo "<br>";
echo $website;
echo "<br>";
echo $comment;
echo "<br>";
echo $gender;
?>
</body>
</html>

Sortie :

Validation en PHP

Explication du programme ci-dessus : Dans l'exemple ci-dessus, nous avons combiné tous les différents champs disponibles tels que le champ de texte, les boutons radio et également les types de format d'e-mail. La sortie sera affichée sous la forme d'une boîte qui sera conforme à la spécification que nous donnons dans le code HTML. Lors de la saisie des valeurs obligatoires, celles-ci s'affichent sous le texte « Les informations saisies sont : ». Supposons qu'une des valeurs obligatoires ne soit pas donnée, un message d'erreur sera affiché à côté de cet attribut particulier indiquant qu'il est obligatoire et doit être rempli.

Avantages de la validation en PHP

  • En utilisant la validation côté client, nous pouvons recevoir des commentaires plus rapidement sans avoir à éteindre le serveur et à télécharger une autre page HTML.
  • La validation côté client permet également d'économiser de la charge sur le serveur et d'augmenter les performances.

Conclusion

Nous avons vu dans ce tutoriel comment faire de la validation en PHP côté client et à quel point c'est indispensable. Cela permet de gagner du temps, permettant ainsi de disposer de plus de bande passante pour signaler à l'utilisateur final son erreur en remplissant le formulaire donné. Cependant, la validation côté serveur est également importante, car elle est effectuée à l'aide de JavaScript, etc. Nous pouvons donc enfin conclure en disant que les validations côté client et côté serveur sont importantes car elles se complètent pour atteindre l'objectif final.

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!

Déclaration:
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
Article précédent:nom de base en PHPArticle suivant:nom de base en PHP