如何使用PHP正则对表单数据进行验证?(详细步骤)
程序员文章站
2022-03-09 11:56:55
...
上篇文章给大家介绍了《如何使用正则替换的方式实现清除字符串中所有的HTML标签?》,本文继续给大家介绍如何使用PHP正则对表单数据进行验证?
如何使用PHP正则对表单数据进行验证?
首先,我们先布局我们的HTML的表单,紧接着要添加form标签,(注意:一切和用户相关的内容,我们再传输的时候要用post),然后,我们再表单中添加,账号,密码和邮箱,最后再加一个登陆按钮,
以代码演示为例:
<?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>
代码结果如下所示;
运行结果是成功的,但是我们在给的案例中显示,账号需要字母、数字以及下划线组成。密码需要8-16位的大小写与字母数字组成,邮箱需要输入正确的mail的地址,因此,我们在代码中加入需要默认加入的规则,代码演示如下;
<?php /*******用户数据验证*********/ $userInfo = '字母数字以及下划线组成'; $pwdInfo = '6-13位大小写字母以及数字'; $emailInfo = '输入正确的email地址' ; ?> <!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>
代码结果如下所示;
根据代码显示,我们所需要的内容也显示在运行结果中,但我们默认显示搞定后,就要去定义验证规则了,验证用户输出的内容是否否和要求;比如说,我们以用户为例,先定义$userpattern = '/^\w+$/S';然后进行判断,加入if条件句,在if语句中,如果没有设置用户则不会进行条件句的判断,或者设置出错也不会进入,以此类推。我们以代码为例:
<?php /*******用户数据验证*********/ $userInfo = '字母数字以及下划线组成'; $pwdInfo = '6-13位大小写字母以及数字'; $emailInfo = '输入正确的email地址' ; $userPattern ='/^\w+$/S'; if(isset($_POST['name'])){ if(preg_match($userPattern,$_POST['name'])){ $userInfo = '<font color="green">正确</font>'; }else{ $userInfo = '<fort color= "pick">字母数字以及下划线组成</font>'; } $pwdPattern ='/^[a-zA-Z0-9]{6,13}$/S'; if(isset($_POST['pwd'])){ if(preg_match($pwdPattern,$_POST['pwd'])){ $pwdInfo ='<font color=" green">正确</font>'; }else{ $pwdInfo = '<fort color= "pick">6-13位大小写字母以及数字</font>'; } } $emailPattern = '/^\w+@[0-9a-zA-Z]+(\.[a-zA-Z]{2,5})+$/S'; if(isset($_POST['email'])){ if (preg_match( $emailPattern,$_POST['email'])){ $emailInfo = '<font color=" green">正确</font>' ; }else{ $emailInfo = '<font color="red" >输入正确的email地址</font>'; } } ?>
代码结果如下所示;
推荐学习:《PHP视频教程》
以上就是如何使用PHP正则对表单数据进行验证?(详细步骤)的详细内容,更多请关注其它相关文章!