批改状态:合格
老师批语:
1、仿用户注册实时刷新反馈的应用实例
利用AJAX,仿用户注册网页,可以提示规定的用户名可用、用户名不能用、数字用户名不能用、用户名不能为空等功能。
2、代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>ajax</title>
</head>
<body>
<h2>用户登录</h2>
<form>
<p>用户名:<input type="text" name="name"></p>
</form>
</body>
</html>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
//当失去焦点时时行验证
$(':input').blur(function(){
alert('通过')
//使用ajax进行异步验证
//语法1: 全部参数写到$.ajax()参数中
$.ajax({
//请求的服务器资源
url: 'api/demo.php',
//客户端的请求类型
type: 'GET',
//从服务器端返回的数据类型格式:xml,html,json,txt等
dataType: 'json',
//异步true,还是同步false(锁定浏览器)
async: true,
//发送数据
//1.查询字符串键值对,多个值之间用&连接
data: 'name='+$(':input').val(),
//2.json格式
data: {'name':$(':input').val()},
//3.当表单有多个字段时使用序列化方法可提高效率
//将表单控件内容序列化为查询键值对格式
/data: $('form:first').serialize(),
//4.将表单控件内容序列化为json格式
data: $('form:first').serializeArray(),
//成功回调
success: function(msg,status,xhr) {
console.log(msg)
$('p span').empty()
$('p').append($(msg))
}
})
</script>点击 "运行实例" 按钮查看在线实例
3、PHP代码
<?php
// print_r($_GET);exit;
// 用数组模拟数据库中的已存在的用户名,不允许使用
$nameList = ['admin','php'];
//这是当前用户提交的用户名
$userName = $_GET['name'];
//判断用户名是否为空
if (strlen(trim($userName))==0) {
$status = 0;
$tips = '<span style="color:red">用户名不能为空</span>';
echo json_encode(['status'=>$status, 'tips'=>$tips]);
// echo '<span style="color:red">用户名不能为空</span>';
//判断用户名是否为纯数字,这是不允许的
} else if (is_numeric($userName)) {
$status = 0;
$tips = '<span style="color:red">用户名不能为纯数字</span>';
echo json_encode(['status'=>$status, 'tips'=>$tips]);
// echo '<span style="color:red">用户名不能为纯数字</span>';
//判断用户名是否已经被注册
} else if (in_array($userName, $nameList)) {
$status = 0;
$tips = '<span style="color:red">用户名太抢手了,换一个</span>';
echo json_encode(['status'=>$status, 'tips'=>$tips]);
// echo '<span style="color:red">用户名太抢手了,换一个</span>';
//用户名可用提示
} else {
$status = 0;
$tips = '<span style="color:green">恭喜,用户名可用</span>';
echo json_encode(['status'=>$status, 'tips'=>$tips]);
// echo '<span style="color:green">恭喜,用户名可用</span>';
}点击 "运行实例" 按钮查看在线实例
4、手写代码

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号