|
|
<%@page import="javabean.Base"%> <!-- 导入Base类,用于数据库连接等操作 -->
|
|
|
<%@page import="java.sql.ResultSet"%> <!-- 导入ResultSet类,用于存储查询的结果 -->
|
|
|
<%@page import="java.sql.PreparedStatement"%> <!-- 导入PreparedStatement类,用于执行预编译SQL语句 -->
|
|
|
<%@page import="java.sql.Connection"%> <!-- 导入Connection类,用于管理数据库连接 -->
|
|
|
<%@page import="net.sf.json.JSONObject"%> <!-- 导入JSONObject类,用于处理JSON对象 -->
|
|
|
<%@page import="net.sf.json.JSONArray"%> <!-- 导入JSONArray类,用于处理JSON数组 -->
|
|
|
<%@page import="javabean.Admin"%> <!-- 导入Admin类,用于管理员相关操作 -->
|
|
|
<%@ page language="java" contentType="text/html; charset=UTF-8"
|
|
|
pageEncoding="UTF-8"%> <!-- 设置页面的语言为Java,字符编码为UTF-8,设置页面的字符编码为UTF-8 -->
|
|
|
<!DOCTYPE html> <!-- 声明文档类型为HTML5 -->
|
|
|
<html> <!-- 开始HTML文档 -->
|
|
|
<head>
|
|
|
<meta charset="UTF-8"> <!-- 设置页面字符编码为UTF-8 -->
|
|
|
<title>图书证修改</title> <!-- 页面标题设置为“图书证修改” -->
|
|
|
<link rel="stylesheet" href="../public/layui/css/layui.css" media="all"> <!-- 引入layui CSS样式 -->
|
|
|
<script src="../public/layui/layui.js" charset="utf-8"></script> <!-- 引入layui JavaScript库 -->
|
|
|
<style>
|
|
|
.layui-form{ <!-- 样式设置 -->
|
|
|
margin: 10px 20px; <!-- 设置表单的外边距 -->
|
|
|
}
|
|
|
</style>
|
|
|
</head>
|
|
|
<body>
|
|
|
<%
|
|
|
// 获取借阅证ID参数
|
|
|
String id = request.getParameter("id"); // 获取通过URL传递的“id”参数
|
|
|
|
|
|
// 初始化数据库连接及SQL语句
|
|
|
Connection connection = null; // 声明数据库连接对象
|
|
|
PreparedStatement pstmt = null; // 声明PreparedStatement对象,用于查询规则
|
|
|
PreparedStatement infoPstmt = null; // 声明PreparedStatement对象,用于查询借阅证信息
|
|
|
ResultSet ruleSet = null; // 声明ResultSet对象,用于存放规则查询结果
|
|
|
ResultSet infoSet = null; // 声明ResultSet对象,用于存放借阅证信息查询结果
|
|
|
String sql = "select * from rules"; // 查询规则的SQL语句
|
|
|
String infoSql = "select * from borrow_card where id=?"; // 查询借阅证信息的SQL语句,使用占位符“?”
|
|
|
String result = ""; // 初始化字符串变量result,用于存储结果
|
|
|
|
|
|
// 获取数据库连接
|
|
|
connection = (Connection)Base.getConnection(); // 调用Base类中的getConnection方法获取数据库连接
|
|
|
pstmt = connection.prepareStatement(sql); // 准备执行规则查询SQL语句
|
|
|
infoPstmt = connection.prepareStatement(infoSql); // 准备执行借阅证信息查询SQL语句
|
|
|
infoPstmt.setString(1, id); // 设置查询借阅证信息SQL语句中的ID参数
|
|
|
infoSet = infoPstmt.executeQuery(); // 执行查询并获取结果集
|
|
|
infoSet.next(); // 将结果集指针移动到查询的第一行
|
|
|
ruleSet = pstmt.executeQuery(); // 执行规则查询并获取结果集
|
|
|
%>
|
|
|
|
|
|
<form class="layui-form layui-form-pane" action="" lay-filter="cardFilter"> <!-- 创建layui表单,添加lay-filter属性用于过滤表单 -->
|
|
|
|
|
|
<!-- 账号 -->
|
|
|
<div class="layui-form-item"> <!-- 表单项 -->
|
|
|
<label class="layui-form-label">账号</label> <!-- 标签显示为“账号” -->
|
|
|
<div class="layui-input-block"> <!-- 输入框容器 -->
|
|
|
<input type="text" name="id" value=<%=id %> class="layui-input" disabled> <!-- 显示账号,值为Java中传递的id参数,且设置为不可编辑 -->
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<!-- 姓名 -->
|
|
|
<div class="layui-form-item"> <!-- 表单项 -->
|
|
|
<label class="layui-form-label">姓名</label> <!-- 标签显示为“姓名” -->
|
|
|
<div class="layui-input-block"> <!-- 输入框容器 -->
|
|
|
<input type="text" name="reader" value=<%=infoSet.getString("reader") %> lay-verify="required" autocomplete="off" placeholder="请输入姓名" class="layui-input"> <!-- 姓名输入框,默认值为数据库查询到的reader字段值,且设置为必填 -->
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<!-- 密码 -->
|
|
|
<div class="layui-form-item"> <!-- 表单项 -->
|
|
|
<label class="layui-form-label">密码</label> <!-- 标签显示为“密码” -->
|
|
|
<div class="layui-input-block"> <!-- 输入框容器 -->
|
|
|
<input type="password" name="password" value=<%=infoSet.getString("password") %> placeholder="请输入密码" autocomplete="off" class="layui-input" lay-verify="required"> <!-- 密码输入框,默认值为数据库查询到的password字段值,且设置为必填 -->
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<!-- 借阅规则 -->
|
|
|
<div class="layui-form-item"> <!-- 表单项 -->
|
|
|
<label class="layui-form-label">规则</label> <!-- 标签显示为“规则” -->
|
|
|
<div class="layui-input-block"> <!-- 输入框容器 -->
|
|
|
<select name="rule_id" lay-filter="rule_id" lay-verify="required"> <!-- 下拉框,显示借阅规则 -->
|
|
|
<% while(ruleSet.next()){ %> <!-- 遍历所有查询到的规则 -->
|
|
|
<option value=<%=ruleSet.getString("id") %> <%if(ruleSet.getString("id").equals(infoSet.getString("rule_id"))) out.print("selected"); %>><%=ruleSet.getString("id") %></option> <!-- 显示规则ID,如果当前规则ID和借阅证规则ID一致,则选中此项 -->
|
|
|
<%} %>
|
|
|
</select>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<div class="layui-form-item"> <!-- 表单项 -->
|
|
|
<label class="layui-form-label">状态</label> <!-- 标签显示为“状态” -->
|
|
|
<div class="layui-input-block"> <!-- 输入框容器 -->
|
|
|
<input type="radio" name="status" value="1" title="可用" <%if(infoSet.getString("status").equals("1")) out.print("checked"); %>> <!-- 如果借阅证状态为“可用”,则选中该项 -->
|
|
|
<input type="radio" name="status" value="0" title="挂失" <%if(infoSet.getString("status").equals("0")) out.print("checked"); %>> <!-- 如果借阅证状态为“挂失”,则选中该项 -->
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<div class="layui-form-item"> <!-- 表单项 -->
|
|
|
<div class="layui-input-block"> <!-- 按钮容器 -->
|
|
|
<button class="layui-btn" lay-submit="" lay-filter="submitForm">立即提交</button> <!-- 提交按钮 -->
|
|
|
<button type="reset" class="layui-btn layui-btn-primary">重置</button> <!-- 重置按钮 -->
|
|
|
</div>
|
|
|
</div>
|
|
|
</form>
|
|
|
|
|
|
<script>
|
|
|
layui.use(['form', 'jquery'], function(){ <!-- 使用layui的form和jquery模块 -->
|
|
|
var form = layui.form <!-- 获取form模块 -->
|
|
|
,layer = layui.layer; <!-- 获取layer模块 -->
|
|
|
$ = layui.jquery; <!-- 获取jQuery对象 -->
|
|
|
// 提交表单
|
|
|
form.on('submit(submitForm)', function(data){ <!-- 监听提交按钮的点击事件 -->
|
|
|
$.ajax({ <!-- 发送AJAX请求 -->
|
|
|
url: './cardEdit', <!-- 请求的URL -->
|
|
|
type: 'post', <!-- 请求方式为POST -->
|
|
|
data: data.field, <!-- 提交的数据为表单数据 -->
|
|
|
dataType: 'json', <!-- 返回的数据格式为JSON -->
|
|
|
timeout : 3000, <!-- 设置请求的超时时间为3000毫秒 -->
|
|
|
success: function(data){ <!-- 请求成功时的回调函数 -->
|
|
|
if(data.code == "0"){ <!-- 如果返回的数据中的code为0,表示操作成功 -->
|
|
|
layer.msg("修改成功", { <!-- 弹出提示框,提示修改成功 -->
|
|
|
icon: 6,
|
|
|
anim: 5,
|
|
|
time: 500, <!-- 设置提示框显示时间为500毫秒 -->
|
|
|
});
|
|
|
setTimeout(function(){ <!-- 延时关闭当前窗口 -->
|
|
|
var index = parent.layer.getFrameIndex(window.name); <!-- 获取当前iframe层的索引 -->
|
|
|
parent.layer.close(index); <!-- 关闭当前iframe层 -->
|
|
|
}, 500) <!-- 延时500毫秒后执行关闭操作 -->
|
|
|
}else{ <!-- 如果返回的数据中的code不为0,表示操作失败 -->
|
|
|
leyer.msg("修改失败"); <!-- 弹出提示框,提示修改失败 -->
|
|
|
}
|
|
|
},
|
|
|
error: function(){ <!-- 请求失败时的回调函数 -->
|
|
|
layer.msg("获取超时"); <!-- 弹出提示框,提示请求超时 -->
|
|
|
}
|
|
|
|
|
|
});
|
|
|
return false; <!-- 阻止表单的默认提交行为 -->
|
|
|
})
|
|
|
|
|
|
});
|
|
|
</script>
|
|
|
|
|
|
<%
|
|
|
Base.closeResource(connection, pstmt, ruleSet); // 关闭数据库资源
|
|
|
%>
|
|
|
</body>
|
|
|
</html>
|