Méthodes de traitement des formulaires PHP et FAQ

PHPz
Libérer: 2023-06-09 08:46:01
original
1077 Les gens l'ont consulté

Avec la mise à jour et le développement continus des sites Web et des applications, le traitement des formulaires est devenu un élément nécessaire du développement Web. Le traitement des formulaires peut être divisé en validation côté client et traitement côté serveur. En tant que l'un des langages importants dans le développement Web, PHP possède une excellente capacité à traiter les formulaires. Cet article présentera les méthodes de base du traitement des formulaires PHP et les réponses aux questions courantes.

1. Méthode de base de traitement de formulaire PHP

  1. Formulaire de soumission

Le formulaire contient une série de zones de saisie, de cases à cocher, de cases radio, de listes déroulantes et d'autres éléments de formulaire. Lorsque l'utilisateur remplit le formulaire et clique sur le bouton Soumettre, les données du formulaire seront envoyées au serveur.

  1. Recevoir les données du formulaire

Côté serveur, PHP capture les données du formulaire via la variable superglobale $_POST ou $_GET, et les données reçues seront stockées dans un tableau.

  1. Vérifier les données du formulaire

Pour les données du formulaire soumises par les utilisateurs, le serveur doit les vérifier pour s'assurer que le format, le type et la plage des données répondent aux attentes. La validation des données est généralement mise en œuvre via des instructions conditionnelles if.

  1. Traitement des données du formulaire

Après une vérification réussie des données, le serveur doit insérer les données reçues dans la base de données, envoyer des e-mails, générer des fichiers, etc., pour atteindre l'objectif du formulaire.

  1. Afficher les résultats de la soumission

Enfin, les résultats du traitement doivent être renvoyés à l'utilisateur. Habituellement, les résultats de la soumission du formulaire peuvent être affichés en accédant à la page, en affichant des informations d'invite, etc.

Ci-dessous, nous démontrerons le processus de traitement des formulaires PHP à travers des exemples.

2. Exemple de traitement de formulaire

Nous devons d'abord créer un formulaire dans la page HTML, le code est le suivant :

<form method="post" action="form_handle.php">
  <label for="name">姓名:</label>
  <input type="text" id="name" name="name" required><br>

  <label for="email">邮箱:</label>
  <input type="email" id="email" name="email" required><br>

  <label for="gender">性别:</label>
  <input type="radio" id="male" name="gender" value="male">
  <label for="male">男</label>
  <input type="radio" id="female" name="gender" value="female">
  <label for="female">女</label><br>

  <label for="hobby">爱好:</label>
  <input type="checkbox" id="sport" name="hobby[]" value="sport">
  <label for="sport">运动</label>
  <input type="checkbox" id="music" name="hobby[]" value="music">
  <label for="music">音乐</label><br>

  <label for="comments">评论:</label>
  <textarea id="comments" name="comments"></textarea><br>

  <button type="submit">提交</button>
</form>
Copier après la connexion

Dans le formulaire ci-dessus, nous définissons la méthode de soumission sur post, l'adresse de soumission sur form_handle .php, dans l'élément de formulaire L'attribut name est défini, qui est utilisé par PHP pour obtenir les données du formulaire.

Dans le fichier form_handle.php, nous pouvons capturer les données du formulaire en utilisant la super variable globale $_POST. Le code est le suivant :

$name = $_POST["name"];
$email = $_POST["email"];
$gender = $_POST["gender"];
$hobbies = implode(",", $_POST["hobby"]); // 处理复选框数据
$comments = $_POST["comments"];
Copier après la connexion

Après avoir obtenu les données du formulaire, nous devons vérifier et traiter les données. Plus précisément, nous devons vérifier si le nom d'utilisateur est vide, si le format de l'e-mail est correct, si le sexe et les loisirs sont sélectionnés, etc. Le code est le suivant :

if(empty($name)){
  echo "姓名不能为空!";
  exit;
}

if(!filter_var($email, FILTER_VALIDATE_EMAIL)){
  echo "邮箱格式不正确!";
  exit;
}

if(empty($gender)){
  echo "请选择性别!";
  exit;
}

if(empty($hobbies)){
  echo "请选择爱好!";
  exit;
}
Copier après la connexion

Si la vérification réussit, vous pouvez insérer les données du formulaire dans la base de données ou envoyer un e-mail, etc., et afficher des informations d'invite. Si la vérification échoue, il faut rappeler à l'utilisateur de saisir à nouveau les données et d'accéder à la page.

Enfin, vous pouvez commenter les résultats du traitement en accédant à la page ou en affichant des informations d'invite. Le code est le suivant :

echo "提交成功!";
Copier après la connexion

3.

    Par rapport à la méthode get, la méthode post de soumission de données est plus sécurisée et fiable, et peut gérer une plus grande quantité de données. Lors de la soumission de données en mode publication, les données ne seront pas ajoutées à l'URL, mais placées dans le corps du message HTTP, évitant ainsi la fuite et la falsification de données sensibles.
Comment gérer les données des cases à cocher ?

    Lorsque l'utilisateur coche plusieurs cases, PHP renvoie un tableau. Afin de formater les données dans une chaîne et de les stocker dans la base de données, nous pouvons utiliser la fonction implode pour convertir le tableau en une chaîne séparée par des virgules.
Comment résoudre le problème des caractères chinois tronqués ?

    Lorsque PHP traite les données du formulaire, s'il y a des caractères chinois dans le formulaire, des caractères tronqués peuvent apparaître. La solution est d'ajouter le code suivant à la page PHP :
  1. header('Content-type:text/html;charset=utf-8');
    Copier après la connexion
    Cela évitera les caractères chinois tronqués.

    Comment éviter la soumission répétée de formulaires ?

      La soumission répétée de formulaires peut provoquer des anomalies dans les données du système. Afin d'éviter les soumissions répétées, nous pouvons générer un jeton unique pour chaque formulaire côté serveur, stocker le jeton dans la session lorsque le formulaire est soumis et l'exécuter sur le serveur. le prochain contrôle de soumission. Si les jetons sont incohérents, cela sera considéré comme une soumission en double.
    1. Ce qui précède est une introduction aux méthodes de traitement des formulaires PHP et aux FAQ. J'espère que cela pourra aider les développeurs PHP.

    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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!