Blogger Information
Blog 64
fans 2
comment 3
visits 75546
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
php来处理表单—2018年4月17日14:45:21
清雨的博客
Original
661 people have browsed it

表单验证是在用户注册及用户个人中心填写信息的主要验证方式,是在网站开发中必不可少的环境,其中在网站开发中,评论等功能均需采用验证等方式。

html代码

实例

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>php来处理表单</title>
	<style type="text/css">
		table {				
			background-color: wheat;
			box-shadow: 3px 3px 3px #888;
			border-radius: 3%;
			padding: 15px;
			margin: 30px auto;
		}
		table td {
			padding: 8px;
		}
		table caption {
			font-size: 1.5em;
			margin-bottom: 10px;
		}
		textarea {
			resize: none;
		}
		form table button {
			width: 100px;
			height: 30px;
			cursor: pointer;
			border: none;
			background-color: skyblue;
			color: white;
		}
		form table button:hover {
			background-color: orangered;
			color: white;
			font-size:1.1em;
		}
	</style>
</head>
<body>	
	<form action="admin/check.php" method="post">
		<table>
			<caption>用户注册</caption>
			<tr>
				<td><label for="email">邮箱:</label></td>
				<td><input type="text" name="email" id="email" autofocus=""></td>
			</tr>
			<tr>
				<td><label for="password1">密码:</label></td>
				<td><input type="password" name="password1" id="password1"></td>
			</tr>
			<tr>
				<td><label for="password2">确认:</label></td>
				<td><input type="password" name="password2" id="password2"></td>
			</tr>
			<tr>
				<td><label for="secret">性别:</label></td>
				<td> <!-- 单选与众不同,点击标签会自动选择默认值 -->
					<input type="radio" name="gender" id="male" value="male" ><label for="male">男</label>
					<input type="radio" name="gender" id="female" value="female"><label for="female">女</label>
					<input type="radio" name="gender" id="secret" value="secret" checked="" ><label for="secret">保密</label>
				</td>
			</tr>
			<tr>
				<td><label for="level">级别</label></td>
				<td>
					<select name="level" id="level">
						<option value="0">小白</option>
						<option value="1" selected="">中级</option>
						<option value="2">大神</option>
				</select>
				</td>
			</tr>
			<tr>
				<td><label for="php">语言:</label></td>
				<td>  <!-- 点击标签会把php做为默认项之一选中 -->
					<input type="checkbox" name="lang[]" id="php" value="php"  checked><label for="php">php</label>
					<input type="checkbox" name="lang[]" id="java" value="java"><label for="java">java</label>
					<input type="checkbox" name="lang[]" id="python" value="php"><label for="python">python</label>
					<input type="checkbox" name="lang[]" id="c" value="c"><label for="c">c</label>
				</td>
			</tr>
			<tr>
				<td valign="middle"><label for="comment">简介:</label></td>
				<td><textarea name="comment" id="comment" rows="3" cols="30"></textarea></td>
			</tr>
			<tr>
				<td colspan="2" align="center">
					<button type="submit" name="submit" id="submit" value="submit">提交</button>
				</td>
			</tr>
		</table>
	</form>	
	<script type="text/javascript" src="js/jquery.js"></script>
	<script type="text/javascript">
		//请求邮箱验证
		$('#email').blur(function(){

			$.post('admin/check.php?check=email', 'email='+$('#email').val(), function(data){
				switch(data.status) {
					case 0:
					$('td').find('span').remove() //提示信息清空,
					$('#email').after('<span>').next().text(data.msg).css('color', 'red').prev().focus();
					break;
					case 1:
					$('td').find('span').remove() //提示信息清空,
					$('#email').after('<span>').next().text(data.msg).css('color', 'red').prev().focus();
					break;
					case 2:
					$('td').find('span').remove() //提示信息清空,
					$('#email').after('<span>').next().text(data.msg).css('color', 'green') // 获取服务端提示信息邮箱可用
					break;
				}
				
			},'json')
		})


		//密码验证
		$('#password1').blur(function(){
			if ($('#email').val().length == 0) {
				return false
			}
			$.post('admin/check.php?check=password1','password1='+$('#password1').val(),function(data){
				if(data.status == 0) {
					$('#password1').after('<span>').next().text(data.msg).css('color', 'red').prev().focus();
				}
			},'json')
		})

		//确认密码验证
		$('#password2').blur(function(){
			if ($('#email').val().length == 0) {
				return false
			}
			$.post('admin/check.php?check=password2', {
				password1: $('#password1').val(),
				password2: $('#password2').val()
			}, function(data){
				switch(data.status) {
					case 0:
					$('td').find('span').remove()
					$('#password2').after('<span>').next().text(data.msg).css('color', 'red').prev().focus();
					break;
					case 1:
					$('td').find('span').remove()
					$('#password2').after('<span>').next().text(data.msg).css('color', 'red').prev().focus();
					break;
					case 2:
					$('td').find('span').remove()
					$('#password2').after('<span>').next().text(data.msg).css('color', 'green')
					break;
				}
				
			},'json')
		})
	
		//验证级别
		$('#level').blur(function(){

			if ($('#email').val().length == 0) {
				return false
			}

			$.post('admin/check.php?check=level', 'level='+$('#level').val(), function(data){
				switch(data.status) {
					case 0:
					$('td').find('span').remove() //提示信息清空,
					$('#level').after('<span>').next().text(data.msg).css('color', 'green');
					break;
					case 1:
					$('td').find('span').remove() //提示信息清空,
					$('#level').after('<span>').next().text(data.msg).css('color', 'green');
					break;
					case 2:
					$('td').find('span').remove() //提示信息清空,
					$('#level').after('<span>').next().text(data.msg).css('color', 'green')
					break;
				}
				
			},'json')
		})
		
		//简介验证
		$('#comment').blur(function(){
			if ($('#level').val().length == 0) {
				return false
			}

			$.post('admin/check.php?check=comment', 'comment='+$('#comment').val(), function(data){
				switch(data.status) {
					case 0:
					$('td').find('span').remove() //提示信息清空,
					$('#comment').after('<span>').next().text(data.msg).css('color', 'red').prev().focus();
					break;
					case 1:
					$('td').find('span').remove() //提示信息清空,
					$('#comment').after('<span>').next().text(data.msg).css('color', 'green')
					break;
					
				}
				
			},'json')
		})
	</script>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

PHP代码

实例

<?php 

 switch ($_GET['check']) {
 	//验证邮箱
 	case 'email': 		
		$email = $_POST['email']; // 设置默认值
		if (empty($email)) {
			exit(json_encode(['status'=>0,'msg'=>'邮箱不能为空']));
		} else if (in_array($email, ['admin@php.cn','zhu@php.cn'])){
			exit(json_encode(['status'=>1,'msg'=>'邮箱已占用']));
		} else {
			echo json_encode(['status'=>2,'msg'=>'邮箱可用']);
		}
 		break;

 	//验证密码
 	case 'password1':
 		$password1 = $_POST['password1'];
		if (empty($password1)) {
			exit(json_encode(['status'=>0,'msg'=>'密码不能为空']));
		}
		break; 	

	//验证确认密码
 	case 'password2':
 		$password1 = $_POST['password1'];
 		$password2 = $_POST['password2'];
		if (empty($password2)) {
			exit(json_encode(['status'=>0,'msg'=>'确认不能为空']));
		} else if ($password1 != $password2){
			exit(json_encode(['status'=>1,'msg'=>'二次密码不相等']));
		}  else {
			exit(json_encode(['status'=>2,'msg'=>'验证通过']));
		}
		break;

		//验证级别
		
	case 'level': 		
		$level = $_POST['level']; // 设置默认值
		if (empty($level)) {
			exit(json_encode(['status'=>0,'msg'=>'您选择的级别为:小白']));
		}  else if (empty($level)) {
			exit(json_encode(['status'=>1,'msg'=>'您选择的级别为:中级']));
		}  else {
			exit(json_encode(['status'=>2,'msg'=>'您选择的级别为:高级']));
		}
 		break;
		//验证简介
	case 'comment':
		$comment = $_POST['comment'];
		if (mb_strlen(trim($comment)) < 10) {
			exit(json_encode(['status'=>0,'msg'=>'请填入不少于10个字符的内容']));
		} else {
			exit(json_encode(['status'=>1,'msg'=>'通过']));
		}
		break;
		
 	
 }
	
	
	

运行实例 »

点击 "运行实例" 按钮查看在线实例

效果图:

1.png

总结:

因为昨天加班忙无法观看直播,导致第二天观看录播,其中反复观看几次录播其中的一些还是无法能够理解,无法向在直播中能够较快速的理解。



Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post