ホームページ > バックエンド開発 > PHPの問題 > PHP 正規表現を使用してフォーム データを検証するにはどうすればよいですか? (詳しい手順)

PHP 正規表現を使用してフォーム データを検証するにはどうすればよいですか? (詳しい手順)

慕斯
リリース: 2023-03-10 14:00:01
オリジナル
2437 人が閲覧しました

前回の記事では「定期的な置換を使用して文字列内のすべての HTML タグをクリアする方法」を紹介しました。 》, この記事では引き続き、PHP 正規表現を使用してフォーム データを検証する方法を紹介します。

PHP 正規表現を使用してフォーム データを検証するにはどうすればよいですか? (詳しい手順)

#PHP 正規表現を使用してフォーム データを検証するにはどうすればよいですか?

まず、HTML フォームをレイアウトし、フォーム タグを追加します (注: ユーザー関連のコンテンツはすべてポストを使用して送信する必要があります)。次に、アカウント番号、パスワード、およびアカウントを追加します。メール アドレスをフォームに入力し、最後にログイン ボタンを追加します。

コードのデモを例として挙げます:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

<?php

/*******用户数据验证*********/

?>

<!DOCTYPE html>

<html>

<head>

      <meta charset="UTF-8">

      <title>用户信息验证</title>

</head>

<body>

      <form action="" method=" post">

          账号:

      <input type="text" name="name" value="" /><br/>

          密码:<!--密码一定用type=password

          这里没用的原因是为了让大家看到输入的内容-->

      <input type= "text" name="pwd" value="" /><br/>

          邮箱:

      <input type= "text" name=" email" value="" /><br/>

      <input type="submit" value="登录" >

 </form>

ログイン後にコピー

コードの結果は次のとおりです。

PHP 正規表現を使用してフォーム データを検証するにはどうすればよいですか? (詳しい手順)

操作結果は成功しましたが、ここで示したケースでは、口座番号は文字、数字、アンダースコアで構成する必要があることが示されています。パスワードは 8 ~ 16 文字の大文字、小文字、数字で構成する必要があります。メール アドレスは正しいメール アドレスを入力する必要があります。そのため、デフォルトで追加する必要があるルールをコードに追加します。コードのデモは次のとおりです。次のように;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

<?php

/*******用户数据验证*********/

    $userInfo = &#39;字母数字以及下划线组成&#39;;

    $pwdInfo = &#39;6-13位大小写字母以及数字&#39;;

    $emailInfo = &#39;输入正确的email地址&#39; ;

?>

<!DOCTYPE html>

<html>

<head>

      <meta charset="UTF-8">

      <title>用户信息验证</title>

</head>

<body>

      <form action="" method=" post">

          账号:

      <input type="text" name="name" value="" /><?=$userInfo?><br/>

          密码:<!--密码一定用type=password

          这里没用的原因是为了让大家看到输入的内容-->

      <input type= "text" name="pwd" value="" /><?=$pwdInfo?><br/>

          邮箱:

      <input type= "text" name=" email" value="" /><?=$emailInfo?><br/>

      <input type="submit" value="登录" >

 </form>

ログイン後にコピー

コードの結果は次のとおりです 示されているように;

PHP 正規表現を使用してフォーム データを検証するにはどうすればよいですか? (詳しい手順)

コードの表示によると、実行中に必要なコンテンツも表示されます。結果は表示されますが、デフォルトの表示を取得した後、検証ルールを定義する必要があります。検証 ユーザーが出力したコンテンツが要件を満たしているかどうか。たとえば、ユーザーを例として、最初に $userpattern = '/^\ を定義します。 w $/S'; そして判断して if 条件文を追加します if 文では、設定していないと条件文の判断ができなかったり、設定が間違っていると入力できなかったりしますが、等々。コードを例として見てみましょう:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

<?php

/*******用户数据验证*********/

    $userInfo = &#39;字母数字以及下划线组成&#39;;

    $pwdInfo = &#39;6-13位大小写字母以及数字&#39;;

    $emailInfo = &#39;输入正确的email地址&#39; ;

    $userPattern =&#39;/^\w+$/S&#39;;

    if(isset($_POST[&#39;name&#39;])){

    if(preg_match($userPattern,$_POST[&#39;name&#39;])){

        $userInfo = &#39;<font color="green">正确</font>&#39;;

    }else{

        $userInfo = &#39;<fort color= "pick">字母数字以及下划线组成</font>&#39;;

    }

     $pwdPattern =&#39;/^[a-zA-Z0-9]{6,13}$/S&#39;;

     if(isset($_POST[&#39;pwd&#39;])){

         if(preg_match($pwdPattern,$_POST[&#39;pwd&#39;])){

     $pwdInfo =&#39;<font color=" green">正确</font>&#39;;

     }else{

        $pwdInfo = &#39;<fort color= "pick">6-13位大小写字母以及数字</font>&#39;;

     }

    }

    $emailPattern = &#39;/^\w+@[0-9a-zA-Z]+(\.[a-zA-Z]{2,5})+$/S&#39;;

   if(isset($_POST[&#39;email&#39;])){

   if (preg_match( $emailPattern,$_POST[&#39;email&#39;])){

   $emailInfo = &#39;<font color=" green">正确</font>&#39; ;

   }else{

   $emailInfo = &#39;<font color="red" >输入正确的email地址</font>&#39;;

}

}

?>

ログイン後にコピー

コードの結果は次のとおりです;

PHP 正規表現を使用してフォーム データを検証するにはどうすればよいですか? (詳しい手順)

推奨される学習: 「PHP ビデオ チュートリアル 」 「

以上がPHP 正規表現を使用してフォーム データを検証するにはどうすればよいですか? (詳しい手順)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート