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 相关文章推荐
ajax+php打造进度条代码[readyState各状态说明]
Apr 12 PHP
那些年一起学习的PHP(三)
Mar 22 PHP
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
Jan 03 PHP
腾讯微博提示missing parameter errorcode 102 错误的解决方法
Dec 22 PHP
php实现汉字验证码和算式验证码的方法
Mar 07 PHP
php利用反射实现插件机制的方法
Mar 14 PHP
php设计模式之单例模式代码
Jun 11 PHP
PHP版单点登陆实现方案的实例
Nov 17 PHP
PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的区别分析
Jul 03 PHP
PHP二维数组实现去除重复项的方法【保留各个键值】
Dec 21 PHP
PHP多进程通信-消息队列使用
Mar 08 PHP
Yii框架多语言站点配置方法分析【中文/英文切换站点】
Apr 07 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中查询SQL Server或Sybase时TEXT字段被截断的解决方法
2009/03/10 PHP
php UTF8 文件的签名问题
2009/10/30 PHP
php合并js请求的例子
2013/11/01 PHP
Ubuntu下安装PHP的mongodb扩展操作命令
2015/07/04 PHP
php无序树实现方法
2015/07/28 PHP
解决laravel 出现ajax请求419(unknown status)的问题
2019/09/03 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
Alliance vs Liquid BO3 第一场2.13
2021/03/10 DOTA
菜鸟学习JavaScript小实验之函数引用
2010/11/17 Javascript
jQuery 源码分析笔记(6) jQuery.data
2011/06/08 Javascript
jQuery实现平滑滚动页面到指定锚点链接的方法
2015/07/15 Javascript
JQuery通过AJAX从后台获取信息显示在表格上并支持行选中
2015/09/15 Javascript
bootstrap table 表格中增加下拉菜单末行出现滚动条的快速解决方法
2017/01/05 Javascript
js实现4个方向滚动的球
2017/03/06 Javascript
详解微信小程序Radio选中样式切换
2017/07/06 Javascript
python中反射用法实例
2015/03/27 Python
python列表生成式与列表生成器的使用
2018/02/23 Python
python的dataframe转换为多维矩阵的方法
2018/04/11 Python
使用python接入微信聊天机器人
2020/03/31 Python
Python 占位符的使用方法详解
2019/07/10 Python
django-rest-swagger对API接口注释的方法
2019/08/29 Python
django中使用事务及接入支付宝支付功能
2019/09/15 Python
python算的上脚本语言吗
2020/06/22 Python
无惧面试,带你搞懂python 装饰器
2020/08/17 Python
CSS3制作轮播图的一种方法
2019/11/11 HTML / CSS
AmazeUI 输入框组的示例代码
2020/08/14 HTML / CSS
C# Debug和Testing相关面试题
2015/10/25 面试题
消防器材管理制度
2014/01/28 职场文书
应聘医药销售自荐书范文
2014/02/08 职场文书
贯彻学习两会心得体会范文
2014/03/17 职场文书
小学国庆节活动方案策划书
2014/09/16 职场文书
工作失职自我检讨书
2015/05/05 职场文书
上课迟到检讨书范文
2015/05/06 职场文书
交通事故起诉书
2015/05/19 职场文书
Python合并多张图片成PDF
2021/06/09 Python
win10电脑右下角输入法图标不见了?Win10右下角不显示输入法的解决方法
2022/07/23 数码科技