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 相关文章推荐
将数字格式的计算结果转为汉字格式
Oct 09 PHP
PHP配置心得包含MYSQL5乱码解决
Nov 20 PHP
通过PHP CLI实现简单的数据库实时监控调度
Jul 01 PHP
PHP 变量的定义方法
Jan 26 PHP
解析VS2010利用VS.PHP插件调试PHP的方法
Jul 19 PHP
PHP中nowdoc和heredoc使用需要注意的一点
Mar 21 PHP
Codeigniter的dom类用法实例
Jun 26 PHP
功能强大的php文件上传类
Aug 29 PHP
PHP生成各种随机验证码的方法总结【附demo源码】
Jun 05 PHP
Laravel模型间关系设置分表的方法示例
Apr 21 PHP
thinkPHP框架实现的短信接口验证码功能示例
Jun 20 PHP
php字符串倒叙
Apr 01 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
一个很方便的 XML 类!!原创的噢
2006/10/09 PHP
PHP实现远程下载文件到本地
2015/05/17 PHP
浅析Yii2中GridView常见操作
2016/04/22 PHP
PHP正则替换函数preg_replace()报错:Notice Use of undefined constant的解决方法分析
2017/02/04 PHP
javascripit实现密码强度检测代码分享
2013/12/12 Javascript
javascript 闭包详解及简单实例应用
2016/12/31 Javascript
JavaScript实现向select下拉框中添加和删除元素的方法
2017/03/07 Javascript
使用jQuery和ajax代替iframe的方法(详解)
2017/04/12 jQuery
JavaScript表单验证实现代码
2017/05/22 Javascript
详解微信小程序scroll-view横向滚动的实践踩坑及隐藏其滚动条的实现
2019/03/14 Javascript
原生Vue 实现右键菜单组件功能
2019/12/16 Javascript
JS如何在不同平台实现多语言方式
2020/07/16 Javascript
React中使用Vditor自定义图片详解
2020/12/25 Javascript
[01:14:05]《加油DOTA》第四期
2014/08/25 DOTA
学习python的几条建议分享
2013/02/10 Python
Windows下为Python安装Matplotlib模块
2015/11/06 Python
python 网络编程详解及简单实例
2017/04/25 Python
浅谈python装饰器探究与参数的领取
2017/12/01 Python
python list删除元素时要注意的坑点分享
2018/04/18 Python
python实现图片批量压缩程序
2018/07/23 Python
Django REST框架创建一个简单的Api实例讲解
2019/11/05 Python
python生成器用法实例详解
2019/11/22 Python
Python3+selenium配置常见报错解决方案
2020/08/28 Python
JINS眼镜官方网站:日本最大的眼镜邮购
2016/10/14 全球购物
介绍一下结构化程序设计方法和面向对象程序设计方法的区别
2012/06/27 面试题
实习医生自我评价
2013/09/22 职场文书
《鸟的天堂》教学反思
2014/02/27 职场文书
《圆明园的毁灭》教学反思
2014/02/28 职场文书
可口可乐广告词
2014/03/20 职场文书
社团活动总结范文
2014/04/26 职场文书
学习退步检讨书
2014/09/28 职场文书
作文评语怎么写
2014/12/25 职场文书
优秀团支部申报材料
2014/12/26 职场文书
小学感恩主题班会
2015/08/12 职场文书
聊一聊Redis与MySQL双写一致性如何保证
2021/06/26 Redis
浅谈Python中对象是如何被调用的
2022/04/06 Python