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 CKEditor 上传图片实现代码
Nov 06 PHP
解析PHP中数组元素升序、降序以及重新排序的函数
Jun 20 PHP
php下拉选项的批量操作的实现代码
Oct 14 PHP
ThinkPHP空模块和空操作详解
Jun 30 PHP
分享PHP计算两个日期相差天数的代码
Dec 23 PHP
php ci 获取表单中多个同名input元素值的代码
Mar 25 PHP
laravel创建类似ThinPHP中functions.php的全局函数
Nov 26 PHP
PHP获取路径和目录的方法总结【必看篇】
Mar 04 PHP
php生成0~1随机小数的方法(必看)
Apr 05 PHP
phpStudy中升级MySQL版本到5.7.17的方法步骤
Aug 03 PHP
PHP实现浏览器格式化显示XML的方法示例
Jan 22 PHP
Thinkphp5.0框架使用模型Model的获取器、修改器、软删除数据操作示例
Oct 11 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
用sql命令修改数据表中的一个字段为非空(not null)的语句
2010/06/04 PHP
PHP 5.6.11 访问SQL Server2008R2的几种情况详解
2016/08/08 PHP
PHP魔术方法以及关于独立实例与相连实例的全面讲解
2016/10/18 PHP
js身份证验证超强脚本
2008/10/26 Javascript
cookie.js 加载顺序问题怎么才有效
2013/07/31 Javascript
js与运算符和或运算符的妙用
2014/02/14 Javascript
jquery常用操作小结
2014/07/21 Javascript
一个字符串反转函数可实现字符串倒序
2014/09/15 Javascript
Javascript实现div的toggle效果实例分析
2015/06/09 Javascript
jquery正则表达式验证(手机号、身份证号、中文名称)
2015/12/31 Javascript
js+css实现回到顶部按钮(back to top)
2016/03/02 Javascript
Document.body.scrollTop的值总为零的快速解决办法
2016/06/09 Javascript
JS控制文本域只读或可写属性的方法
2016/06/24 Javascript
jQuery回到顶部的代码
2016/07/09 Javascript
使用JQuery选择HTML遍历函数的方法
2016/09/17 Javascript
webpack+vue.js快速入门教程
2016/10/12 Javascript
js文件中直接alert()中文出来的是乱码的解决方法
2016/11/01 Javascript
php register_shutdown_function函数详解
2017/07/23 Javascript
JavaScript定时器setTimeout()和setInterval()详解
2017/08/18 Javascript
node内置调试方法总结
2018/02/22 Javascript
JS从非数组对象转数组的方法小结
2018/03/26 Javascript
vue路由传参页面刷新参数丢失问题解决方案
2019/10/08 Javascript
vue 自定义右键样式的实例代码
2019/11/06 Javascript
[14:56]教你分分钟做大人:巫医
2014/10/30 DOTA
python3批量删除豆瓣分组下的好友的实现代码
2016/06/07 Python
python 类对象和实例对象动态添加方法(分享)
2017/12/31 Python
Python打印“菱形”星号代码方法
2018/02/05 Python
python 自定义装饰器实例详解
2019/07/20 Python
python使用梯度下降算法实现一个多线性回归
2020/03/24 Python
CSS3实现多重边框的方法总结
2016/05/31 HTML / CSS
在IE6系列等老式浏览器中使用HTML5的新标签实现方案
2012/12/25 HTML / CSS
Spanx塑身衣官网:美国知名内衣品牌
2017/01/11 全球购物
澳大利亚领先的时尚内衣零售商:Bras N Things
2020/07/28 全球购物
土木工程毕业生自荐信
2013/09/21 职场文书
2014年节能工作总结
2014/12/18 职场文书
2015年质检工作总结
2015/05/04 职场文书