php 表单验证实现代码

2018-09-22 00:58

阅读:416

  复制代码 代码如下:
<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()
{
{
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
}
?>


评论


亲,登录后才可以留言!