使用正则表达式验证用户输入的表单内容是否满足格式要求
目录
代码:
新建hpage.php文件,输入以下代码:
<html>
<head>
<title>注册页面</title>
<style type="text/css">
<!--
.STYLE1{font-size:14px;color:red;}
-->
div{
text-align:center;
font-size:24px;
color:#0000FF;
}
table{
margin:0 auto;
}
</style>
</head>
<body>
<form name="fr1" method="post" action="ppage.php">
<div>新用户注册</div>
<table border="1">
<tr>
<td>用户名: </td>
<td><input type="text" name="ID"></td>
<td class="STYLE1">* 不超过10个字符(数字,字母和下划线)</td>
</tr>
<tr>
<td>密码: </td>
<td><input type="password" name="PWD" size="21"></td>
<td class="STYLE1">* 4~14个数字</td>
</tr>
<tr>
<td>手机号码: </td>
<td><input type="tel" name="PHONE"></td>
<td class="STYLE1">* 11位数字,第1位为1</td>
</tr>
<tr>
<td>邮箱: </td>
<td><input type="email" name="EMAIL"></td>
<td class="STYLE1">* 有效的邮件地址</td>
</tr>
<tr>
<td colspan="3" align="center">
<input type="submit" name="GO" value="注册">
<input type="reset" name="NO" value="取消">
</td>
</tr>
</table>
</form>
</body>
</html>
新建ppage.php文件,输入如下代码:
<?php
include 'hpage.php';
$id=$_POST['ID'];
$pwd=$_POST['PWD'];
$phone=$_POST['PHONE'];
$Email=$_POST['EMAIL'];
$checkid=preg_match('/^\w{1,10}$/',$id);
$checkpwd=preg_match('/^\d{4,14}$/',$pwd);
$checkphone=preg_match('/^1\d{10}$/',$phone);
$checkEmail=preg_match('/^[a-zA-Z0-9_\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/',$Email);
if($checkid&&$checkpwd&&$checkphone&&$checkEmail)
echo "注册成功!";
else
echo "注册失败,格式不对";
?>
运行结果如下图所示:
输入的格式正确的结果:
输入的格式错误的结果: