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 相关文章推荐
isset和empty的区别
Jan 15 PHP
PHP音乐采集(部分代码)
Feb 14 PHP
新浪SAE云平台下使用codeigniter的数据库配置
Jun 12 PHP
ThinkPHP3.1之D方法实例详解
Jun 20 PHP
VPS中使用LNMP安装WordPress教程
Dec 28 PHP
Symfony实现行为和模板中取得request参数的方法
Mar 17 PHP
PHP中STDCLASS用法实例分析
Nov 11 PHP
php实现每日签到功能
Nov 29 PHP
PHP DB 数据库连接类定义与用法示例
Mar 11 PHP
PHP数组array类常见操作示例
May 15 PHP
PHP网页缓存技术优点及代码实例
Jul 29 PHP
PHP 实现base64编码文件上传出现问题详解
Sep 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
PHP高级对象构建 多个构造函数的使用
2012/02/05 PHP
PHP统计目录中文件以及目录中目录大小的方法
2016/01/09 PHP
Laravel5.1自定义500错误页面示例
2016/10/09 PHP
thinkPHP模板中for循环与switch语句用法示例
2016/11/30 PHP
PHP中empty,isset,is_null用法和区别
2017/02/19 PHP
Laravel下生成验证码的类
2017/11/15 PHP
PHP使用递归按层级查找数据的方法
2019/11/10 PHP
javascript 3d 逐侦产品展示(核心精简)
2014/03/26 Javascript
clipboard.js无需Flash无需依赖任何JS库实现文本复制与剪切
2015/10/10 Javascript
JS清除文本框内容离开在恢复及鼠标离开文本框时触发js的方法
2016/01/12 Javascript
JavaScript中的各种操作符使用总结
2016/05/26 Javascript
jQuery文件上传控件 Uploadify 详解
2016/06/20 Javascript
基于angularJS的表单验证指令介绍
2016/10/21 Javascript
jQuery学习笔记——jqGrid的使用记录(实现分页、搜索功能)
2016/11/09 Javascript
JS实现点击Radio动态更新table数据
2017/07/18 Javascript
详谈for循环里面的break和continue语句
2017/07/20 Javascript
JQuery元素快速查找与操作
2018/04/22 jQuery
Vue动态创建注册component的实例代码
2019/06/14 Javascript
Electron整合React使用搭建开发环境的步骤详解
2020/06/07 Javascript
[01:32:10]NAVI vs VG Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
Python编写的com组件发生R6034错误的原因与解决办法
2013/04/01 Python
python socket 超时设置 errno 10054
2014/07/01 Python
Python聊天室实例程序分享
2016/01/05 Python
利用python微信库itchat实现微信自动回复功能
2017/05/18 Python
Python3模拟curl发送post请求操作示例
2019/05/03 Python
opencv 获取rtsp流媒体视频的实现方法
2019/08/23 Python
Python+OpenCV+图片旋转并用原底色填充新四角的例子
2019/12/12 Python
css3的图形3d翻转效果应用示例
2014/04/08 HTML / CSS
联想澳大利亚官网:Lenovo Australia
2018/01/18 全球购物
美国嘻哈文化生活方式品牌:GLD
2018/04/15 全球购物
VICHY薇姿俄罗斯官方网上商店:法国护肤品牌,火山温泉水
2019/11/22 全球购物
Myprotein荷兰官网:欧洲第一运动营养品牌
2020/07/11 全球购物
个人简历自我评价
2014/02/02 职场文书
文秘个人求职信范文
2014/04/22 职场文书
应届大专生求职信
2014/06/26 职场文书
二年级语文下册复习计划
2015/01/19 职场文书