>백엔드 개발 >PHP 튜토리얼 >PHP 양식 유효성 검사 구현 코드

PHP 양식 유효성 검사 구현 코드

高洛峰
高洛峰원래의
2017-01-11 16:27:531936검색

php 폼 검증 구현 코드

<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"><p align="right">姓名:</p></td>
<td width="186"><input name="username" type="text" id="username"></td>
</tr>
<tr>
<td><p align="right">密码:</p></td>
<td><input name="password" type="password" id="password"></td>
</tr>
<tr>
<td><p align="right">密码确认:</p></td>
<td><input name="password2" type="password" id="password2"></td>
</tr>
<tr>
<td><p align="right">性别:</p></td>
<td><select name="sex" id="sex">
<option value="0" selected>男</option>
<option value="1">女</option>
</select></td>
</tr>
<tr>
<td><p align="right">生日:</p></td>
<td><input name="birthday" type="text" id="birthday"></td>
</tr>
<tr>
<td><p align="right">E-mail:</p></td>
<td><input name="email" type="text" id="email"></td>
</tr>
<tr>
<td><p align="right">职业:</p></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[&#39;username&#39;])) 
{ 
echo "姓名格式不正确<BR>"; 
$founderr = true; 
} 

if(!ereg("[0-9]{4}-[0-9]{2}-[0-9]{2}", $_GET[&#39;birthday&#39;])) 
{ 
echo "日期格式不正确<BR>"; 
$founderr = true; 
} 

if(!ereg("^[a-zA-Z0-9_.]+@([a-zA-Z0-9_]+.)+[a-zA-Z]{2,3}$", $_GET[&#39;email&#39;])) 
{ 
echo "E-mail地址格式不正确<BR>"; 
$founderr = true; 
} 

if($_GET[&#39;password&#39;] != $_GET[&#39;password2&#39;]) 
{ 
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"><p align="right">姓名:</p></td> 
<td width="186"><?php echo $_GET[&#39;username&#39;] ?></td> 
</tr> 
<tr> 
<td><p align="right">密码:</p></td> 
<td><?php echo $_GET[&#39;password&#39;] ?></td> 
</tr> 
<tr> 
<td><p align="right">性别:</p></td> 
<td><?php if($_GET[&#39;sex&#39;]==0) echo "男"; else echo "女" ?></td> 
</tr> 
<tr> 
<td><p align="right">生日:</p></td> 
<td><?php echo $_GET[&#39;birthday&#39;] ?></td> 
</tr> 
<tr> 
<td><p align="right">E-mail:</p></td> 
<td><?php echo $_GET[&#39;email&#39;] ?></td> 
</tr> 
<tr> 
<td><p align="right">职业:</p></td> 
<td><?php echo $_GET[&#39;job&#39;] ?></td> 
</tr> 
</table> 
</body> 
</html> 
<?php 
} 
?>

PHP 폼 검증 구현 코드와 관련된 더 많은 글은 PHP 중국어 홈페이지를 주목해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.