PHP实现简单的注册页面(正则表达式练习)

简介: html实现简单的注册表单,然后使用php实现简单的数据验证(运用正则表达式)

需求分析

  • 首先做出简单的注册页面的模板,包括用户名、密码、手机号码、邮箱,其中用户名、密码、手机号码、邮箱通过正则表达式实现数据匹配。
  • 用户名不能为空, 用户名不超过10个字符(字母、数字)。
  • 密码不能为空,密码只能为4~14个数字。
  • 手机号码不能为空,手机号码必须为11位,且第1位为1。
  • 邮箱不能为空,邮箱地址无效。
  • 当输入的数据匹配正确时,跳转到另一个页面,(显示输入的数据)。

注册表单效果图

image.png

代码如下

注册页面代码

<!DOCTYPE html><html><head><metahttp-equiv="Content-Type"content="text/html; charset=utf-8"/></head><body><?phpif(isset($_REQUEST["button"])){$test=1;$id=$_REQUEST["ID"];$pwd=$_REQUEST["PWD"];$phone=$_REQUEST["PHONE"];$Email=$_REQUEST["EMAIL"];if($id==''){$id1="用户名不能为空";$test=0; }elseif (preg_match('/^\w{1,10}$/',$id)==0){$id1="用户名不超过10个字符(字母、数字)";$test=0;}if ($pwd==''){$pwd1="密码不能为空";$test=0;}elseif (preg_match( ' /^\d{4,14}$/' ,$pwd)==0){$pwd1="密码只能为4~14个数字" ;$test=0;}if ($phone==''){$phone="手机号码不能为空";$test=0; }elseif (preg_match( ' /^1\d{10}$/',$phone)==0){$phone1="手机号码必须为11位,且第1位为1" ;$test=0;}if($Email==""){$Email="Email不能为空";$test=0; }elseif(preg_match('/^[a-zA-Z0-9_\-]+@[a-zA-Z0-9\_]+\.[a-zA-Z0-9\_\.]+$/',$Email)==0){$Email1="邮箱地址无效";$test=0;}if($test==1)header("Location:hd.php?id=$id&pwd=$pwd&phone=$phone&Email=$Email");}?><formid="form1"name="form1"method="post"action=""><tablewidth="500"border="1"align="center"cellpadding="0"><tr><tdheight="30"colspan="2"align="center">新用户注册</td></tr><tr><tdwidth="100"height="30"align="center">用户名</td><tdheight="30"><inputtype="text"name="ID"id="ID"/><?phpecho @$id1;?></td></tr><tr><tdwidth="10"height="30"align="center">密码</td><tdheight="30"><inputtype="password"name="PWD"id="PWD"/><?phpecho @$pwd1; ?></td></tr><tr><tdwidth="100"height="30"align="center">手机号码</td><tdheight="30"><inputtype="text"name="PHONE"id="PHONE"/><?phpecho @$phone1; ?></td></tr><tr><tdwidth="100"height="30"align="center">邮箱</td><tdheight="30"><inputtype="text"name="EMAIL"id="EMAIL"/><?phpecho @$Email1; ?></td></tr><tdheight="30"colspan="2"align="center"><inputtype="submit"name="button"id="button"value="注册"/>&nbsp;<inputtype="reset"name="button2"id="button2"value="重置"/></td></tr></table></form></body></html>

跳转页面代码

<!DOCTYPE html><html><head><metahttp-equiv="Content-Type"content="text/html; charset=utf-8"/></head><body><?php$id=$_REQUEST["id"];$pwd=$_REQUEST["pwd"];$phone=$_REQUEST["phone"];$Email=$_REQUEST["Email"];?><tablewidth="400"border="1"align="center"cellpadding="0"><tr><tdwidth="150"height="30"align="center">用户名</td><tdwidth="250"height="30"><?phpecho $id; ?></td></tr><tr><tdwidth="150"height="30"align="center">密码</td><tdwidth="250"height="30"><?phpecho $pwd; ?></td></tr><tr><tdwidth="150"height="30"align="center">手机号码</td><tdwidth="250"height="30"><?phpecho $phone; ?></td></tr><tr><tdwidth="150"height="30"align="center">邮箱</td><tdwidth="250"height="30"><?phpecho $Email;?></td></tr></table></body></html>

实现效果

输入信息

image.png

点击注册按钮,验证信息(注册成功)

image.png

输入不正确的信息测试匹配效果

image.png

点击注册按钮,验证信息(注册失败,没有跳转到注册成功界面)

image.png

目录
相关文章
|
7月前
|
设计模式 PHP
php设计模式--观察者模式(4.1)面向过程完成页面内容切换
php设计模式--观察者模式(4.1)面向过程完成页面内容切换
40 0
|
7月前
|
SQL PHP 数据安全/隐私保护
php登录功能(可以判断谁登录的呢)注册粗暴解决
php登录功能(可以判断谁登录的呢)注册粗暴解决
php登录功能(可以判断谁登录的呢)注册粗暴解决
|
3月前
|
JavaScript 前端开发 安全
php学习笔记-普通表单参数提交获取及页面的重定向和一个登录小demo-day05
本文介绍了PHP中普通表单参数的提交获取、页面重定向的方法,并通过一个登录示例演示了表单参数的封装和页面跳转处理。
|
1月前
|
存储 PHP
在PHP中,正则表达式
在PHP中,正则表达式
26 5
|
3月前
|
搜索推荐 PHP UED
PHP中的异常处理与自定义错误页面
【8月更文挑战第33天】在PHP开发中,优雅地处理异常和错误是提升应用稳定性和用户体验的关键。本文将引导你理解PHP的异常处理机制,并教你如何创建自定义错误页面,以增强你的应用对错误的响应能力。从基本的错误类型到深入的异常捕获,再到实现个性化的用户提示,我们将一步步构建一个更加健壮的PHP应用。
38 4
|
5月前
|
缓存 前端开发 PHP
【超详细】php实现扫码关注微信公众号系统/网站自动注册登录
【超详细】php实现扫码关注微信公众号系统/网站自动注册登录
313 0
|
7月前
|
存储 安全 PHP
网安之PHP基础练习
本博文,主要是对自己在学校PHP基础第5节课后,对作业题目的题解,学习和使用php其实这对于后续漏洞挖掘与发现利用很大的帮助,现在在很多网站都还在使用php在做网站搭建的一部分.所以学习和利用还是很有用必要的.在进行题目练习的过程中,发现自己对于学习过的html知识点,开始出现了遗忘,然后进行自己查询资料,并一点一点进行题目的完成,自己也有很多的收获,在做完后,给了自己很多的继续学习下去的动力,发现php是一门很有趣的编程语言.
|
7月前
|
PHP 开发者
【PHP 开发专栏】PHP 字符串处理与正则表达式
【4月更文挑战第30天】本文探讨了PHP中的字符串处理和正则表达式应用。字符串处理部分涵盖基本操作(如连接、长度计算、截取)、格式化(printf/sprintf)、转换(数字与字符串间转换、大小写变换)、比较。正则表达式部分介绍了基本概念、语法(字符类、量词、边界符、分组)及其在搜索替换、数据验证和信息提取中的应用。了解并熟练运用这些技术对PHP开发者至关重要。
64 3