php 表单验证实现代码


Posted in PHP onMarch 10, 2009
<html> 
<head> 
<title>Form</title> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<script language="javascript" src="form.js" src="form.js"></script> 
</head> <body> 
<form action="post.php" method="get" name="form1" onsubmit="return form_sub()"> 
<table width="271" border="0" align="center" cellpadding="0" cellspacing="0"> 
<tr> 
<td width="85"><div align="right">姓名:</div></td> 
<td width="186"><input name="username" type="text" id="username"></td> 
</tr> 
<tr> 
<td><div align="right">密码:</div></td> 
<td><input name="password" type="password" id="password"></td> 
</tr> 
<tr> 
<td><div align="right">密码确认:</div></td> 
<td><input name="password2" type="password" id="password2"></td> 
</tr> 
<tr> 
<td><div align="right">性别:</div></td> 
<td><select name="sex" id="sex"> 
<option value="0" selected>男</option> 
<option value="1">女</option> 
</select></td> 
</tr> 
<tr> 
<td><div align="right">生日:</div></td> 
<td><input name="birthday" type="text" id="birthday"></td> 
</tr> 
<tr> 
<td><div align="right">E-mail:</div></td> 
<td><input name="email" type="text" id="email"></td> 
</tr> 
<tr> 
<td><div align="right">职业:</div></td> 
<td><input name="job" type="text" id="job"></td> 
</tr> 
</table> 
<p align="center"> 
<input type="submit" value="Submit"> 
<input type="reset" value="Reset"> 
</p> 
</form> 
</body> 
</html>
function form_sub() 
{ 
if(!test_username(document.form1.username.value)) 
{ 
alert("姓名格式不正确"); 
return false; 
} if(!test_date(document.form1.birthday.value)) 
{ 
alert("日期格式不正确"); 
return false; 
} 
if(!test_email(document.form1.email.value)) 
{ 
alert("E-mail地址格式不正确"); 
return false; 
} 
if(!test_password(document.form1.password.value, document.form1.password2.value)) 
{ 
alert("两次密码输入不相同"); 
return false; 
} 
} 
function test_username(str_username) 
{ 
var pattern = /[a-zA-Z_]/; 
if(pattern.test(str_username)) 
return true; 
else 
return false; 
} 
function test_date(str_birthday) 
{ 
var pattern = /[0-9]{4}-[0-9]{2}-[0-9]{2}/; 
if(pattern.test(str_birthday)) 
return true; 
else 
return false; 
} 
function test_email(str_email) 
{ 
var pattern = /^[a-zA-Z0-9_.]+@([a-zA-Z0-9_]+.)+[a-zA-Z]{2,3}$/; 
if(pattern.test(str_email)) 
return true; 
else 
return false; 
} 
function test_password(str_p1, str_p2) 
{ 
if(str_p1==str_p2) 
return true; 
else 
return false; 
}
<?php 
//本程序用于接收来自HTML页面的表单数据并进行相应的验证 
$founderr = false; //初始化founderr变量,表示没有错误 
if(!ereg("[a-zA-Z_]", $_GET['username'])) 
{ 
echo "姓名格式不正确<BR>"; 
$founderr = true; 
} if(!ereg("[0-9]{4}-[0-9]{2}-[0-9]{2}", $_GET['birthday'])) 
{ 
echo "日期格式不正确<BR>"; 
$founderr = true; 
} 
if(!ereg("^[a-zA-Z0-9_.]+@([a-zA-Z0-9_]+.)+[a-zA-Z]{2,3}$", $_GET['email'])) 
{ 
echo "E-mail地址格式不正确<BR>"; 
$founderr = true; 
} 
if($_GET['password'] != $_GET['password2']) 
{ 
echo "两次密码输入不相同"; 
$founderr = true; 
} 
if(!$founderr) 
{ 
?> 
<html> 
<head> 
<title>Form</title> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
</head> 
<body> 
<table width="271" border="0" align="center" cellpadding="0" cellspacing="0"> 
<tr> 
<td width="85"><div align="right">姓名:</div></td> 
<td width="186"><?php echo $_GET['username'] ?></td> 
</tr> 
<tr> 
<td><div align="right">密码:</div></td> 
<td><?php echo $_GET['password'] ?></td> 
</tr> 
<tr> 
<td><div align="right">性别:</div></td> 
<td><?php if($_GET['sex']==0) echo "男"; else echo "女" ?></td> 
</tr> 
<tr> 
<td><div align="right">生日:</div></td> 
<td><?php echo $_GET['birthday'] ?></td> 
</tr> 
<tr> 
<td><div align="right">E-mail:</div></td> 
<td><?php echo $_GET['email'] ?></td> 
</tr> 
<tr> 
<td><div align="right">职业:</div></td> 
<td><?php echo $_GET['job'] ?></td> 
</tr> 
</table> 
</body> 
</html> 
<?php 
} 
?>
PHP 相关文章推荐
怎么样可以把 phpinfo()屏蔽掉?
Nov 24 PHP
php 动态多文件上传
Jan 18 PHP
解析PHP可变函数的经典用法
Jun 20 PHP
php中文验证码实现示例分享
Jan 12 PHP
PHP获取网页标题的3种实现方法代码实例
Apr 11 PHP
php+ajax实时刷新简单实例
Feb 25 PHP
实例讲解PHP设计模式编程中的简单工厂模式
Feb 29 PHP
Laravel中间件实现原理详解
Oct 09 PHP
Mac版PhpStorm之XAMPP整合apache服务器配置的图文教程详解
Oct 13 PHP
Yii统计不同类型邮箱数量的方法
Oct 18 PHP
解决thinkPHP 5 nginx 部署时,只跳转首页的问题
Oct 16 PHP
Laravel框架处理用户的请求操作详解
Dec 20 PHP
php连接mysql数据库代码
Mar 10 #PHP
php执行sql语句的写法
Mar 10 #PHP
php 结果集的分页实现代码
Mar 10 #PHP
php 动态添加记录
Mar 10 #PHP
PHP中查询SQL Server或Sybase时TEXT字段被截断的解决方法
Mar 10 #PHP
php mssql 日期出现中文字符的解决方法
Mar 10 #PHP
linux php mysql数据库备份实现代码
Mar 10 #PHP
You might like
PHP伪静态写法附代码
2008/06/20 PHP
腾讯微博提示missing parameter errorcode 102 错误的解决方法
2014/12/22 PHP
php编写简单的文章发布程序
2015/06/18 PHP
PHP 等比例缩放图片详解及实例代码
2016/09/18 PHP
WAF的正确bypass
2017/01/05 PHP
PHP中__set()实例用法和基础讲解
2019/07/23 PHP
解决在Laravel 中处理OPTIONS请求的问题
2019/10/11 PHP
jQuery实现form表单reset按钮重置清空表单功能
2012/12/18 Javascript
javascript中注册和移除事件的4种方式
2013/03/20 Javascript
将nodejs打包工具整合到鼠标右键的方法
2013/05/11 NodeJs
Javascript 修改String 对象 增加去除空格功能(示例代码)
2013/11/30 Javascript
JS自调用匿名函数具体实现
2014/02/11 Javascript
javascript 实现 原路返回
2015/01/21 Javascript
JavaScript实现文字与图片拖拽效果的方法
2015/02/16 Javascript
图解JavaScript中的this关键字
2020/05/28 Javascript
微信小程序中实现一对多发消息详解及实例代码
2017/02/14 Javascript
.net MVC+Bootstrap下使用localResizeIMG上传图片
2017/04/21 Javascript
jQuery实现的下雪动画效果示例【附源码下载】
2018/02/02 jQuery
JS用最简单的方法实现四舍五入
2019/08/27 Javascript
刷新页面后让控制台的js代码继续执行
2019/09/20 Javascript
vue 防止页面加载时看到花括号的解决操作
2020/11/09 Javascript
python选择排序算法的实现代码
2013/11/21 Python
python使用xmlrpc实例讲解
2013/12/17 Python
python简单操作excle的方法
2018/09/12 Python
pytorch如何冻结某层参数的实现
2020/01/10 Python
python super()函数的基本使用
2020/09/10 Python
Python基于Socket实现简易多人聊天室的示例代码
2020/11/29 Python
介绍下Java的输入输出流
2014/01/22 面试题
法人代表证明书
2014/09/18 职场文书
2015元旦晚会主持人开场白+结束语
2014/12/14 职场文书
教师先进事迹材料
2014/12/16 职场文书
2015年“7.11”世界人口日宣传活动方案
2015/05/06 职场文书
MySQL分库分表与分区的入门指南
2021/04/22 MySQL
MySQL 角色(role)功能介绍
2021/04/24 MySQL
Python 中的Sympy详细使用
2021/08/07 Python
防止web项目中的SQL注入
2021/12/06 MySQL