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 相关文章推荐
无数据库的详细域名查询程序PHP版(1)
Oct 09 PHP
为查询结果建立向后/向前按钮
Oct 09 PHP
PHP+MYSQL 出现乱码的解决方法
Aug 08 PHP
php url地址栏传中文乱码解决方法集合
Jun 25 PHP
解决ajax+php中文乱码的方法详解
Jun 09 PHP
php过滤html标记属性类用法实例
Sep 23 PHP
腾讯CMEM的PHP扩展编译安装方法
Sep 25 PHP
Yii框架中sphinx索引配置方法解析
Oct 18 PHP
php的socket编程详解
Nov 20 PHP
Laravel框架实现超简单的分页效果示例
Feb 08 PHP
mac pecl 安装php7.1扩展教程
Oct 17 PHP
phpstorm激活码2020附使用详细教程
Sep 25 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中的路径问题与set_include_path使用介绍
2014/02/11 PHP
php微信开发之音乐回复功能
2018/06/14 PHP
关于实现代码语法标亮 dp.SyntaxHighlighter
2007/02/02 Javascript
基于Jquery的动态添加控件并取值的实现代码
2010/09/24 Javascript
JavaScript判断字符长度、数字、Email、电话等常用判断函数分享
2015/04/01 Javascript
jQuery插件Tooltipster实现漂亮的工具提示
2015/04/12 Javascript
高效利用Angular中内置服务$http、$location等
2016/03/22 Javascript
基于Bootstrap重置输入框内容按钮插件
2016/05/12 Javascript
js 图片转base64的方式(两种)
2018/04/24 Javascript
原生JS实现自定义下拉单选选择框功能
2018/10/12 Javascript
使用vue-cli webpack 快速搭建项目的代码
2018/11/21 Javascript
详解JS浏览器事件循环机制
2019/03/27 Javascript
Python socket.error: [Errno 98] Address already in use的原因和解决方法
2014/08/25 Python
python使用any判断一个对象是否为空的方法
2014/11/19 Python
python traceback捕获并打印异常的方法
2018/08/31 Python
flask session组件的使用示例
2018/12/25 Python
Python爬取知乎图片代码实现解析
2019/09/17 Python
Python生成器常见问题及解决方案
2020/03/21 Python
python通过cython加密代码
2020/12/11 Python
HTML5 visibilityState属性详细介绍和使用实例
2014/05/03 HTML / CSS
canvas绘制树形结构可视图形的实现
2020/04/03 HTML / CSS
梅西百货澳大利亚:Macy’s Australia
2017/07/26 全球购物
idealfit英国:世界领先的女性健身用品和运动衣物品牌
2017/11/25 全球购物
周生生珠宝香港官网:Chow Sang Sang(香港及海外配送)
2019/09/05 全球购物
adidas瑞典官方网站:购买阿迪达斯鞋子和运动服
2019/12/11 全球购物
程序集与命名空间有什么不同
2014/07/25 面试题
生物制药毕业生自荐信
2013/10/16 职场文书
总裁秘书岗位职责
2013/12/04 职场文书
《故乡》教学反思
2014/04/10 职场文书
2014年入党积极分子党校培训心得体会
2014/07/08 职场文书
社会学专业求职信
2014/07/17 职场文书
查摆问题自我剖析材料
2014/08/18 职场文书
关于运动会的广播稿(10篇)
2014/09/12 职场文书
国情备忘录观后感
2015/06/04 职场文书
毕业证明书
2015/06/19 职场文书
CSS3 天气图标动画效果
2021/04/06 HTML / CSS