IDEA+Java+Servlet+JSP+Mysql实现驾校学员管理系统
目录
一、系统介绍
1.开发环境
操作系统:Win10
开发工具 :IDEA2018
JDK版本:jdk1.8
数据库:Mysql8.0
2.技术选型
Java+Servlet+JSP+Mysql
3.功能模块
4.数据库文件
/*
Navicat Premium Data Transfer
Source Server : MySQL
Source Server Type : MySQL
Source Server Version : 80013
Source Host : 127.0.0.1:3306
Source Schema : servlet_drivingschool
Target Server Type : MySQL
Target Server Version : 80013
File Encoding : 65001
Date: 13/10/2024 22:41:13
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for gradeinfo
-- ----------------------------
DROP TABLE IF EXISTS `gradeinfo`;
CREATE TABLE `gradeinfo` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`sno` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`cno` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`last_time` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`times` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`grade` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of gradeinfo
-- ----------------------------
INSERT INTO `gradeinfo` VALUES (4, '1001', '1', '2024-10-8', '1', '90');
INSERT INTO `gradeinfo` VALUES (5, '1002', '2', '2024-10-8', '1', '95');
-- ----------------------------
-- Table structure for healthinfo
-- ----------------------------
DROP TABLE IF EXISTS `healthinfo`;
CREATE TABLE `healthinfo` (
`sno` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`sname` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`height` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`weight` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`differentiate` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`left_sight` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`right_sight` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`left_ear` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`right_ear` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`legs` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`pressure` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`history` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`h_text` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
PRIMARY KEY (`sno`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of healthinfo
-- ----------------------------
INSERT INTO `healthinfo` VALUES ('1001', '王三', '180', '90', '正常', '2.0', '2.0', '正常', '正常', '正常', '正常', '无', '无');
INSERT INTO `healthinfo` VALUES ('1002', '李艾', '180', '90', '正常', '2.5', '2.5', '正常', '正常', '正常', '正常', '无', '无');
-- ----------------------------
-- Table structure for licenseinfo
-- ----------------------------
DROP TABLE IF EXISTS `licenseinfo`;
CREATE TABLE `licenseinfo` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`sno` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`sname` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`lno` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`receive_time` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`receive_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`l_text` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of licenseinfo
-- ----------------------------
INSERT INTO `licenseinfo` VALUES (1, '1001', '王三', '10001', '2024-10-8', '张三', '张三');
INSERT INTO `licenseinfo` VALUES (3, '1002', '李艾', '10002', '2024-10-9', '李四', '李四');
-- ----------------------------
-- Table structure for studentinfo
-- ----------------------------
DROP TABLE IF EXISTS `studentinfo`;
CREATE TABLE `studentinfo` (
`sno` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`sname` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`sex` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`age` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`identify` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`tel` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`car_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`enroll_time` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`leave_time` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`scondition` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`s_text` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
PRIMARY KEY (`sno`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of studentinfo
-- ----------------------------
INSERT INTO `studentinfo` VALUES ('1001', '王三', '男', '22', '62242520000301', '13193569865', 'A1', '2024-9-28', '2024-11-29', '学习', '无');
INSERT INTO `studentinfo` VALUES ('1002', '李艾', '女', '22', '62242520000302', '13193569867', 'C1', '2024-9-28', '2024-12-19', '结业', '无');
INSERT INTO `studentinfo` VALUES ('1003', '李桥', '女', '22', '62242520000303', '13193569868', 'C1', '2024-10-13', '2024-10-26', '学习', '无');
-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES ('admin', 'admin');
-- ----------------------------
-- View structure for grade_view
-- ----------------------------
DROP VIEW IF EXISTS `grade_view`;
CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `grade_view` AS select `a`.`id` AS `id`,`a`.`sno` AS `sno`,`b`.`sname` AS `sname`,(case `a`.`cno` when '1' then '理论' when '2' then '倒车' when '3' then '路考 ' end) AS `cname`,`a`.`times` AS `times`,`a`.`last_time` AS `last_time`,`a`.`grade` AS `grade` from (`gradeinfo` `a` join `studentinfo` `b` on((`a`.`sno` = `b`.`sno`)));
SET FOREIGN_KEY_CHECKS = 1;
二、系统展示
1.登录系统
2.主页展示
3.修改密码
4.学籍信息添加
5.学籍信息管理
6.体检信息添加
7.体检信息管理
8.成绩信息添加
9.成绩信息管理
10.驾驶证领取添加
11.驾驶证领取管理
三、部分代码
insertGrade
package com.sjsq.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.sjsq.db.DB;
public class insertGrade extends HttpServlet {
public insertGrade() {
super();
}
public void destroy() {
super.destroy();
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
String sql = null;
int i;
String sno = request.getParameter("sno");
String cno = request.getParameter("cno");
String times = request.getParameter("times");
String last_time = request.getParameter("last_time");
String grade = request.getParameter("grade");
DB db = new DB();
db.connectMySQL();
if (sno != null && !sno.equals("")) {
sql = "SELECT * FROM studentInfo WHERE sno=" + sno;
try {
ResultSet rs = db.query(sql);
if (rs.next()) {
sql = "INSERT INTO gradeInfo VALUES(NULL," + sno + "," + cno +
",'" + last_time + "'," + times + "," + grade + ")";
System.out.println(sql);
i = db.update(sql);
if (i > 0) {
response.sendRedirect("../queryGrade.jsp");
} else {
System.out.println("记录插入失败!");
response.sendRedirect("../insertGrade.jsp");
}
} else {
System.out.println("学员表中没有该学员");
response.sendRedirect("../insertGrade.jsp");
}
db.closeDB();
} catch (SQLException e) {
e.printStackTrace();
response.sendRedirect("../insertGrade.jsp");
}
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
public void init() throws ServletException {
}
}
insertHealth
package com.sjsq.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.sjsq.db.DB;
public class insertHealth extends HttpServlet {
public insertHealth() {
super();
}
public void destroy() {
super.destroy();
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
String sql = null;
int i;
String sname;
String sno = request.getParameter("sno");
String height = request.getParameter("height");
String weight = request.getParameter("weight");
String differentiate = request.getParameter("differentiate");
String left_sight = request.getParameter("left_sight");
String right_sight = request.getParameter("right_sight");
String left_ear = request.getParameter("left_ear");
String right_ear = request.getParameter("right_ear");
String legs = request.getParameter("legs");
String pressure = request.getParameter("pressure");
String history = request.getParameter("history");
String h_text = request.getParameter("h_text");
DB db = new DB();
db.connectMySQL();
sql = "SELECT * FROM studentInfo WHERE sno=" + sno;
System.out.println(sql);
try {
ResultSet rs = db.query(sql);
if (rs.next()) {
sname = rs.getString("sname");
System.out.println(sname + " 1111111111");
sql = "INSERT INTO healthInfo VALUES(" + sno + ",'" + sname + "'," + height +
"," + weight + ",'" + differentiate + "'," + left_sight + "," + right_sight + ",'" + left_ear +
"','" + right_ear + "','" + legs + "','" + pressure + "','" + history + "','" + h_text + "')";
i = db.update(sql);
if (i > 0) {
response.sendRedirect("../queryHealth.jsp");
} else {
response.sendRedirect("../insertHealth.jsp");
}
} else {
response.sendRedirect("../insertHealth.jsp");
}
db.closeDB();
} catch (SQLException e) {
e.printStackTrace();
response.sendRedirect("../insertHealth.jsp");
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
public void init() throws ServletException {
}
}
insertLicense
package com.sjsq.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.sjsq.db.DB;
public class insertLicense extends HttpServlet {
public insertLicense() {
super();
}
public void destroy() {
super.destroy();
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
String sql = null;
int i;
String sname;
String sno = request.getParameter("sno");
String lno = request.getParameter("lno");
String receive_time = request.getParameter("receive_time");
String receive_name = request.getParameter("receive_name");
String l_text = request.getParameter("l_text");
DB db = new DB();
db.connectMySQL();
sql = "SELECT * FROM studentInfo WHERE sno=" + sno;
System.out.println(sql);
try {
ResultSet rs = db.query(sql);
if (rs.next()) {
sname = rs.getString("sname");
System.out.println(sname + " 1111111111");
sql = "INSERT INTO licenseInfo VALUES(NULL," + sno + ",'" + sname + "','" +
lno + "','" + receive_time + "','" + receive_name + "','" + l_text + "')";
System.out.println(sql);
i = db.update(sql);
if (i > 0) {
response.sendRedirect("../queryLicense.jsp");
} else {
response.sendRedirect("../insertLicense.jsp");
}
} else {
response.sendRedirect("../insertLicense.jsp");
}
db.closeDB();
} catch (SQLException e) {
e.printStackTrace();
response.sendRedirect("../insertLicense.jsp");
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
public void init() throws ServletException {
}
}
insertStudent
package com.sjsq.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.sjsq.db.DB;
public class insertStudent extends HttpServlet {
public insertStudent() {
super();
}
public void destroy() {
super.destroy();
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=GBK");
PrintWriter out = response.getWriter();
request.setCharacterEncoding("utf-8");
String sql = null;
int i;
String sno = request.getParameter("sno");
String sname = request.getParameter("sname");
System.out.println(sname);
String sex = request.getParameter("sex");
String age = request.getParameter("age");
String identify = request.getParameter("identify");
String tel = request.getParameter("tel");
String car_type = request.getParameter("carType");
String enroll_time = request.getParameter("enrollTime");
if (enroll_time.equals(""))
enroll_time = "9999-12-30";
String leave_time = request.getParameter("leaveTime");
if (leave_time.equals(""))
leave_time = "9999-12-30";
String scondition = request.getParameter("scondition");
String s_text = request.getParameter("stext");
DB db = new DB();
db.connectMySQL();
if (sno != null && !sno.equals("")) {
sql = "SELECT * FROM studentInfo WHERE sno=" + sno;
try {
ResultSet rs = db.query(sql);
if (rs.next()) {
System.out.println("该记录已经存在!");
response.sendRedirect("../LoginError.html");
} else {
sql = "INSERT INTO studentInfo VALUES(" + sno + ",'" + sname + "','" + sex +
"'," + age + ",'" + identify + "','" + tel + "','" + car_type + "','" + enroll_time +
"','" + leave_time + "','" + scondition + "','" + s_text + "')";
System.out.println(sql);
i = db.update(sql);
if (i > 0) {
request.getSession().setAttribute("flag", "OK");
response.sendRedirect("../queryStudent.jsp");
} else {
System.out.println("记录插入失败!");
response.sendRedirect("../insertStudent.jsp");
}
}
db.closeDB();
} catch (SQLException e) {
e.printStackTrace();
response.sendRedirect("../insertStudent.jsp");
}
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
public void init() throws ServletException {
}
}
insertGrade.jsp
<%@ page language="java" pageEncoding="utf-8" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>insertGrade.jsp</title>
<script language="JavaScript" type="text/JavaScript">
// 日期选择
// By Ziyue(http://www.web-v.com/)
var months = new Array("一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月");
var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var days = new Array("日", "一", "二", "三", "四", "五", "六");
var today;
document.writeln("<div id='Calendar' style='position:absolute; z-index:1; visibility: hidden; filter:\"progid:DXImageTransform.Microsoft.Shadow(direction=135,color=#999999,strength=3)\"'></div>");
function getDays(month, year) {
//下面的这段代码是判断当前是否是闰年的
if (1 == month)
return ((0 == year % 4) && (0 != (year % 100))) || (0 == year % 400) ? 29 : 28;
else
return daysInMonth[month];
}
function getToday() {
//得到今天的年,月,日
this.now = new Date();
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}
function getStringDay(str) {
//得到输入框的年,月,日
var str = str.split("-")
this.now = new Date(parseFloat(str[0]), parseFloat(str[1]) - 1, parseFloat(str[2]));
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}
function newCalendar() {
var parseYear = parseInt(document.all.Year.options[document.all.Year.selectedIndex].value);
var newCal = new Date(parseYear, document.all.Month.selectedIndex, 1);
var day = -1;
var startDay = newCal.getDay();
var daily = 0;
if ((today.year == newCal.getFullYear()) && (today.month == newCal.getMonth()))
day = today.day;
var tableCal = document.all.calendar;
var intDaysInMonth = getDays(newCal.getMonth(), newCal.getFullYear());
for (var intWeek = 1; intWeek < tableCal.rows.length; intWeek++)
for (var intDay = 0; intDay < tableCal.rows[intWeek].cells.length; intDay++) {
var cell = tableCal.rows[intWeek].cells[intDay];
if ((intDay == startDay) && (0 == daily))
daily = 1;
if (day == daily) //今天,调用今天的Class
{
cell.style.background = '#6699CC';
cell.style.color = '#FFFFFF';
//cell.style.fontWeight='bold';
}
else if (intDay == 6) //周六
cell.style.color = 'green';
else if (intDay == 0) //周日
cell.style.color = 'red';
if ((daily > 0) && (daily <= intDaysInMonth)) {
cell.innerText = daily;
daily++;
}
else
cell.innerText = "";
}
}
function GetDate(InputBox) {
var sDate;
//这段代码处理鼠标点击的情况
if (event.srcElement.tagName == "TD")
if (event.srcElement.innerText != "") {
sDate = document.all.Year.value + "-" + document.all.Month.value + "-" + event.srcElement.innerText;
eval("document.all." + InputBox).value = sDate;
HiddenCalendar();
}
}
function HiddenCalendar() {
//关闭选择窗口
document.all.Calendar.style.visibility = 'hidden';
}
function ShowCalendar(InputBox) {
var x, y, intLoop, intWeeks, intDays;
var DivContent;
var year, month, day;
var o = eval("document.all." + InputBox);
var thisyear; //真正的今年年份
thisyear = new getToday();
thisyear = thisyear.year;
today = o.value;
if (isDate(today))
today = new getStringDay(today);
else
today = new getToday();
//显示的位置
x = o.offsetLeft;
y = o.offsetTop;
while (o = o.offsetParent) {
x += o.offsetLeft;
y += o.offsetTop;
}
document.all.Calendar.style.left = x + 2;
document.all.Calendar.style.top = y + 20;
document.all.Calendar.style.visibility = "visible";
//下面开始输出日历表格(border-color:#9DBAF7)
DivContent = "<table border='0' cellspacing='0' style='border:1px solid #0066FF; background-color:#EDF2FC'>";
DivContent += "<tr>";
DivContent += "<td style='border-bottom:1px solid #0066FF; background-color:#C7D8FA'>";
//年
DivContent += "<select name='Year' id='Year' onChange='newCalendar()' style='font-family:Verdana; font-size:12px'>";
for (intLoop = thisyear - 35; intLoop < (thisyear + 2); intLoop++)
DivContent += "<option value= " + intLoop + " " + (today.year == intLoop ? "Selected" : "") + ">" + intLoop + "</option>";
DivContent += "</select>";
//月
DivContent += "<select name='Month' id='Month' onChange='newCalendar()' style='font-family:Verdana; font-size:12px'>";
for (intLoop = 0; intLoop < months.length; intLoop++)
DivContent += "<option value= " + (intLoop + 1) + " " + (today.month == intLoop ? "Selected" : "") + ">" + months[intLoop] + "</option>";
DivContent += "</select>";
DivContent += "</td>";
DivContent += "<td style='border-bottom:1px solid #0066FF; background-color:#C7D8FA; font-weight:bold; font-family:Wingdings 2,Wingdings,Webdings; font-size:16px; padding-top:2px; color:#4477FF; cursor:hand' align='center' title='关闭' onClick='javascript:HiddenCalendar()'>S</td>";
DivContent += "</tr>";
DivContent += "<tr><td align='center' colspan='2'>";
DivContent += "<table id='calendar' border='0' width='100%'>";
//星期
DivContent += "<tr>";
for (intLoop = 0; intLoop < days.length; intLoop++)
DivContent += "<td align='center' style='font-size:12px'>" + days[intLoop] + "</td>";
DivContent += "</tr>";
//天
for (intWeeks = 0; intWeeks < 6; intWeeks++) {
DivContent += "<tr>";
for (intDays = 0; intDays < days.length; intDays++)
DivContent += "<td onClick='GetDate(\"" + InputBox + "\")' style='cursor:hand; border-right:1px solid #BBBBBB; border-bottom:1px solid #BBBBBB; color:#215DC6; font-family:Verdana; font-size:12px' align='center'></td>";
DivContent += "</tr>";
}
DivContent += "</table></td></tr></table>";
document.all.Calendar.innerHTML = DivContent;
newCalendar();
}
function isDate(dateStr) {
var datePat = /^(\d{4})(\-)(\d{1,2})(\-)(\d{1,2})$/;
var matchArray = dateStr.match(datePat);
if (matchArray == null) return false;
var month = matchArray[3];
var day = matchArray[5];
var year = matchArray[1];
if (month < 1 || month > 12) return false;
if (day < 1 || day > 31) return false;
if ((month == 4 || month == 6 || month == 9 || month == 11) && day == 31) return false;
if (month == 2) {
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day > 29 || (day == 29 && !isleap)) return false;
}
return true;
}
</script>
</head>
<body>
<center>
<h3> 添加成绩信息</h3>
<form name="insertGrade" method="post" action="servlet/insertGrade">
<table width="405" border="o.2" cellpadding="0" cellspacing="0" height="333">
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
学号:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="sno" value=""/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
考试科目:
</td>
<td width="14%" class="TABLE_COL" align="left">
<SELECT NAME="cno">
<OPTION VALUE="1"> 理论
<OPTION VALUE="2"> 倒车
<OPTION VALUE="3"> 路考
</SELECT> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
考试次数:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="times" value=1> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
考试时间:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input name="last_time" type="text" id="lastTime" title="点击选择"
onClick="javascript:ShowCalendar(this.id)" size="20">
<input type="button" name="Submit" value="选 择" onClick="javascript:ShowCalendar('lastTime')"> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
成绩:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="grade" value="0"/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="right">
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="submit" name="Submit" value="提交">
<input type="reset" name="reset" value="重置">
</td>
</tr>
</table>
</form>
</center>
</body>
</html>
insertHealth.jsp
<%@ page language="java" pageEncoding="utf-8" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>insertHealth.jsp</title>
<script language="JavaScript" type="text/JavaScript">
// 日期选择
// By Ziyue(http://www.web-v.com/)
var months = new Array("一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月");
var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var days = new Array("日", "一", "二", "三", "四", "五", "六");
var today;
document.writeln("<div id='Calendar' style='position:absolute; z-index:1; visibility: hidden; filter:\"progid:DXImageTransform.Microsoft.Shadow(direction=135,color=#999999,strength=3)\"'></div>");
function getDays(month, year) {
//下面的这段代码是判断当前是否是闰年的
if (1 == month)
return ((0 == year % 4) && (0 != (year % 100))) || (0 == year % 400) ? 29 : 28;
else
return daysInMonth[month];
}
function getToday() {
//得到今天的年,月,日
this.now = new Date();
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}
function getStringDay(str) {
//得到输入框的年,月,日
var str = str.split("-")
this.now = new Date(parseFloat(str[0]), parseFloat(str[1]) - 1, parseFloat(str[2]));
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}
function newCalendar() {
var parseYear = parseInt(document.all.Year.options[document.all.Year.selectedIndex].value);
var newCal = new Date(parseYear, document.all.Month.selectedIndex, 1);
var day = -1;
var startDay = newCal.getDay();
var daily = 0;
if ((today.year == newCal.getFullYear()) && (today.month == newCal.getMonth()))
day = today.day;
var tableCal = document.all.calendar;
var intDaysInMonth = getDays(newCal.getMonth(), newCal.getFullYear());
for (var intWeek = 1; intWeek < tableCal.rows.length; intWeek++)
for (var intDay = 0; intDay < tableCal.rows[intWeek].cells.length; intDay++) {
var cell = tableCal.rows[intWeek].cells[intDay];
if ((intDay == startDay) && (0 == daily))
daily = 1;
if (day == daily) //今天,调用今天的Class
{
cell.style.background = '#6699CC';
cell.style.color = '#FFFFFF';
//cell.style.fontWeight='bold';
}
else if (intDay == 6) //周六
cell.style.color = 'green';
else if (intDay == 0) //周日
cell.style.color = 'red';
if ((daily > 0) && (daily <= intDaysInMonth)) {
cell.innerText = daily;
daily++;
}
else
cell.innerText = "";
}
}
function GetDate(InputBox) {
var sDate;
//这段代码处理鼠标点击的情况
if (event.srcElement.tagName == "TD")
if (event.srcElement.innerText != "") {
sDate = document.all.Year.value + "-" + document.all.Month.value + "-" + event.srcElement.innerText;
eval("document.all." + InputBox).value = sDate;
HiddenCalendar();
}
}
function HiddenCalendar() {
//关闭选择窗口
document.all.Calendar.style.visibility = 'hidden';
}
function ShowCalendar(InputBox) {
var x, y, intLoop, intWeeks, intDays;
var DivContent;
var year, month, day;
var o = eval("document.all." + InputBox);
var thisyear; //真正的今年年份
thisyear = new getToday();
thisyear = thisyear.year;
today = o.value;
if (isDate(today))
today = new getStringDay(today);
else
today = new getToday();
//显示的位置
x = o.offsetLeft;
y = o.offsetTop;
while (o = o.offsetParent) {
x += o.offsetLeft;
y += o.offsetTop;
}
document.all.Calendar.style.left = x + 2;
document.all.Calendar.style.top = y + 20;
document.all.Calendar.style.visibility = "visible";
//下面开始输出日历表格(border-color:#9DBAF7)
DivContent = "<table border='0' cellspacing='0' style='border:1px solid #0066FF; background-color:#EDF2FC'>";
DivContent += "<tr>";
DivContent += "<td style='border-bottom:1px solid #0066FF; background-color:#C7D8FA'>";
//年
DivContent += "<select name='Year' id='Year' onChange='newCalendar()' style='font-family:Verdana; font-size:12px'>";
for (intLoop = thisyear - 35; intLoop < (thisyear + 2); intLoop++)
DivContent += "<option value= " + intLoop + " " + (today.year == intLoop ? "Selected" : "") + ">" + intLoop + "</option>";
DivContent += "</select>";
//月
DivContent += "<select name='Month' id='Month' onChange='newCalendar()' style='font-family:Verdana; font-size:12px'>";
for (intLoop = 0; intLoop < months.length; intLoop++)
DivContent += "<option value= " + (intLoop + 1) + " " + (today.month == intLoop ? "Selected" : "") + ">" + months[intLoop] + "</option>";
DivContent += "</select>";
DivContent += "</td>";
DivContent += "<td style='border-bottom:1px solid #0066FF; background-color:#C7D8FA; font-weight:bold; font-family:Wingdings 2,Wingdings,Webdings; font-size:16px; padding-top:2px; color:#4477FF; cursor:hand' align='center' title='关闭' onClick='javascript:HiddenCalendar()'>S</td>";
DivContent += "</tr>";
DivContent += "<tr><td align='center' colspan='2'>";
DivContent += "<table id='calendar' border='0' width='100%'>";
//星期
DivContent += "<tr>";
for (intLoop = 0; intLoop < days.length; intLoop++)
DivContent += "<td align='center' style='font-size:12px'>" + days[intLoop] + "</td>";
DivContent += "</tr>";
//天
for (intWeeks = 0; intWeeks < 6; intWeeks++) {
DivContent += "<tr>";
for (intDays = 0; intDays < days.length; intDays++)
DivContent += "<td onClick='GetDate(\"" + InputBox + "\")' style='cursor:hand; border-right:1px solid #BBBBBB; border-bottom:1px solid #BBBBBB; color:#215DC6; font-family:Verdana; font-size:12px' align='center'></td>";
DivContent += "</tr>";
}
DivContent += "</table></td></tr></table>";
document.all.Calendar.innerHTML = DivContent;
newCalendar();
}
function isDate(dateStr) {
var datePat = /^(\d{4})(\-)(\d{1,2})(\-)(\d{1,2})$/;
var matchArray = dateStr.match(datePat);
if (matchArray == null) return false;
var month = matchArray[3];
var day = matchArray[5];
var year = matchArray[1];
if (month < 1 || month > 12) return false;
if (day < 1 || day > 31) return false;
if ((month == 4 || month == 6 || month == 9 || month == 11) && day == 31) return false;
if (month == 2) {
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day > 29 || (day == 29 && !isleap)) return false;
}
return true;
}
</script>
</head>
<body>
<center>
<h3> 添加体检信息</h3>
<form name="insertHealth" method="post" action="servlet/insertHealth">
<table width="405" border="o.2" cellpadding="0" cellspacing="0" height="333">
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
学号:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="sno" value=""/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
身高:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="height"/>CM <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
体重:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="weight"/>Kg <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
辨色:
</td>
<td width="14%" class="TABLE_COL" align="left">
<SELECT NAME="differentiate">
<OPTION VALUE="正常"> 正常
<OPTION VALUE="色盲"> 色盲
<OPTION VALUE="色弱"> 色弱
</SELECT> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
左眼视力:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="left_sight"/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
右眼视力:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="right_sight"/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
左耳听力:
</td>
<td width="14%" class="TABLE_COL" align="left">
<SELECT NAME="left_ear">
<OPTION VALUE="正常"> 正常
<OPTION VALUE="偏弱"> 偏弱
</SELECT> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
右耳听力:
</td>
<td width="14%" class="TABLE_COL" align="left">
<SELECT NAME="right_ear">
<OPTION VALUE="正常"> 正常
<OPTION VALUE="偏弱"> 偏弱
</SELECT> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
腿长:
</td>
<td width="14%" class="TABLE_COL" align="left">
<SELECT NAME="legs">
<OPTION VALUE="正常"> 正常
<OPTION VALUE="不同"> 不同
</SELECT> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
血压状态:
</td>
<td width="14%" class="TABLE_COL" align="left">
<SELECT NAME="pressure">
<OPTION VALUE="正常"> 正常
<OPTION VALUE="偏高"> 偏高
<OPTION VALUE="偏低"> 偏低
</SELECT> <br>
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="center">
病史:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="history" value="无"/>有病史时填写<br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
备注:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="h_text" value="无"/>有备注时填写<br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="right">
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="submit" name="Submit" value="提交">
<input type="reset" name="reset" value="重置">
</td>
</tr>
</table>
</form>
</center>
</body>
</html:html>
insertLicence.jsp
<%@ page language="java" pageEncoding="utf-8" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>insertLicence.jsp</title>
<script language="JavaScript" type="text/JavaScript">
// 日期选择
// By Ziyue(http://www.web-v.com/)
var months = new Array("一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月");
var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var days = new Array("日", "一", "二", "三", "四", "五", "六");
var today;
document.writeln("<div id='Calendar' style='position:absolute; z-index:1; visibility: hidden; filter:\"progid:DXImageTransform.Microsoft.Shadow(direction=135,color=#999999,strength=3)\"'></div>");
function getDays(month, year) {
//下面的这段代码是判断当前是否是闰年的
if (1 == month)
return ((0 == year % 4) && (0 != (year % 100))) || (0 == year % 400) ? 29 : 28;
else
return daysInMonth[month];
}
function getToday() {
//得到今天的年,月,日
this.now = new Date();
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}
function getStringDay(str) {
//得到输入框的年,月,日
var str = str.split("-")
this.now = new Date(parseFloat(str[0]), parseFloat(str[1]) - 1, parseFloat(str[2]));
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}
function newCalendar() {
var parseYear = parseInt(document.all.Year.options[document.all.Year.selectedIndex].value);
var newCal = new Date(parseYear, document.all.Month.selectedIndex, 1);
var day = -1;
var startDay = newCal.getDay();
var daily = 0;
if ((today.year == newCal.getFullYear()) && (today.month == newCal.getMonth()))
day = today.day;
var tableCal = document.all.calendar;
var intDaysInMonth = getDays(newCal.getMonth(), newCal.getFullYear());
for (var intWeek = 1; intWeek < tableCal.rows.length; intWeek++)
for (var intDay = 0; intDay < tableCal.rows[intWeek].cells.length; intDay++) {
var cell = tableCal.rows[intWeek].cells[intDay];
if ((intDay == startDay) && (0 == daily))
daily = 1;
if (day == daily) //今天,调用今天的Class
{
cell.style.background = '#6699CC';
cell.style.color = '#FFFFFF';
//cell.style.fontWeight='bold';
}
else if (intDay == 6) //周六
cell.style.color = 'green';
else if (intDay == 0) //周日
cell.style.color = 'red';
if ((daily > 0) && (daily <= intDaysInMonth)) {
cell.innerText = daily;
daily++;
}
else
cell.innerText = "";
}
}
function GetDate(InputBox) {
var sDate;
//这段代码处理鼠标点击的情况
if (event.srcElement.tagName == "TD")
if (event.srcElement.innerText != "") {
sDate = document.all.Year.value + "-" + document.all.Month.value + "-" + event.srcElement.innerText;
eval("document.all." + InputBox).value = sDate;
HiddenCalendar();
}
}
function HiddenCalendar() {
//关闭选择窗口
document.all.Calendar.style.visibility = 'hidden';
}
function ShowCalendar(InputBox) {
var x, y, intLoop, intWeeks, intDays;
var DivContent;
var year, month, day;
var o = eval("document.all." + InputBox);
var thisyear; //真正的今年年份
thisyear = new getToday();
thisyear = thisyear.year;
today = o.value;
if (isDate(today))
today = new getStringDay(today);
else
today = new getToday();
//显示的位置
x = o.offsetLeft;
y = o.offsetTop;
while (o = o.offsetParent) {
x += o.offsetLeft;
y += o.offsetTop;
}
document.all.Calendar.style.left = x + 2;
document.all.Calendar.style.top = y + 20;
document.all.Calendar.style.visibility = "visible";
//下面开始输出日历表格(border-color:#9DBAF7)
DivContent = "<table border='0' cellspacing='0' style='border:1px solid #0066FF; background-color:#EDF2FC'>";
DivContent += "<tr>";
DivContent += "<td style='border-bottom:1px solid #0066FF; background-color:#C7D8FA'>";
//年
DivContent += "<select name='Year' id='Year' onChange='newCalendar()' style='font-family:Verdana; font-size:12px'>";
for (intLoop = thisyear - 35; intLoop < (thisyear + 2); intLoop++)
DivContent += "<option value= " + intLoop + " " + (today.year == intLoop ? "Selected" : "") + ">" + intLoop + "</option>";
DivContent += "</select>";
//月
DivContent += "<select name='Month' id='Month' onChange='newCalendar()' style='font-family:Verdana; font-size:12px'>";
for (intLoop = 0; intLoop < months.length; intLoop++)
DivContent += "<option value= " + (intLoop + 1) + " " + (today.month == intLoop ? "Selected" : "") + ">" + months[intLoop] + "</option>";
DivContent += "</select>";
DivContent += "</td>";
DivContent += "<td style='border-bottom:1px solid #0066FF; background-color:#C7D8FA; font-weight:bold; font-family:Wingdings 2,Wingdings,Webdings; font-size:16px; padding-top:2px; color:#4477FF; cursor:hand' align='center' title='关闭' onClick='javascript:HiddenCalendar()'>S</td>";
DivContent += "</tr>";
DivContent += "<tr><td align='center' colspan='2'>";
DivContent += "<table id='calendar' border='0' width='100%'>";
//星期
DivContent += "<tr>";
for (intLoop = 0; intLoop < days.length; intLoop++)
DivContent += "<td align='center' style='font-size:12px'>" + days[intLoop] + "</td>";
DivContent += "</tr>";
//天
for (intWeeks = 0; intWeeks < 6; intWeeks++) {
DivContent += "<tr>";
for (intDays = 0; intDays < days.length; intDays++)
DivContent += "<td onClick='GetDate(\"" + InputBox + "\")' style='cursor:hand; border-right:1px solid #BBBBBB; border-bottom:1px solid #BBBBBB; color:#215DC6; font-family:Verdana; font-size:12px' align='center'></td>";
DivContent += "</tr>";
}
DivContent += "</table></td></tr></table>";
document.all.Calendar.innerHTML = DivContent;
newCalendar();
}
function isDate(dateStr) {
var datePat = /^(\d{4})(\-)(\d{1,2})(\-)(\d{1,2})$/;
var matchArray = dateStr.match(datePat);
if (matchArray == null) return false;
var month = matchArray[3];
var day = matchArray[5];
var year = matchArray[1];
if (month < 1 || month > 12) return false;
if (day < 1 || day > 31) return false;
if ((month == 4 || month == 6 || month == 9 || month == 11) && day == 31) return false;
if (month == 2) {
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day > 29 || (day == 29 && !isleap)) return false;
}
return true;
}
</script>
</head>
<body>
<center>
<h3>添加领证信息</h3>
<form name="insertLicense" method="post" action="servlet/insertLicense">
<table width="465" border="o.2" cellpadding="0" cellspacing="0" height="333">
<br>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
学号:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="sno" value=""/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
驾驶证号:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input tpye="text" name="lno" value=""/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
领取时间:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input name="receive_time" type="text" id="receive_time" title="点击选择"
onClick="javascript:ShowCalendar(this.id)" size="20">
<input type="button" name="Submit" value="选 择" onClick="javascript:ShowCalendar('receive_time')">
<br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
领取人:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="receive_name" value=""/>领取人的姓名<br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="center">
备注:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="l_text" value="无"/>由他人代领时填写代领原因<br>
</td>
</tr>
<tr class="COL_A">
<td width="10%" class="TABLE_HEAD" align="right">
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="submit" name="Submit" value="提交">
<input type="reset" name="reset" value="重置">
</td>
</tr>
</table>
</form>
</center>
</body>
</html>
insertStudent.jsp
<%@ page language="java" pageEncoding="utf-8" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<link href="styles/common.css" type="text/css" rel="stylesheet"/>
<link href="styles/menu.css" type="text/css" rel="stylesheet"/>
<link href="styles/function.css" type="text/css" rel="stylesheet"/>
<link href="styles/index.css" type="text/css" rel="stylesheet"/>
<link href="styles/link.css" type="text/css" rel="stylesheet"/>
<link href="styles/main.css" type="text/css" rel="stylesheet"/>
<title>insertStudent.jsp</title>
<script language="JavaScript" type="text/JavaScript">
// 日期选择
// By Ziyue(http://www.web-v.com/)
var months = new Array("一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月");
var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var days = new Array("日", "一", "二", "三", "四", "五", "六");
var today;
document.writeln("<div id='Calendar' style='position:absolute; z-index:1; visibility: hidden; filter:\"progid:DXImageTransform.Microsoft.Shadow(direction=135,color=#999999,strength=3)\"'></div>");
function getDays(month, year) {
//下面的这段代码是判断当前是否是闰年的
if (1 == month)
return ((0 == year % 4) && (0 != (year % 100))) || (0 == year % 400) ? 29 : 28;
else
return daysInMonth[month];
}
function getToday() {
//得到今天的年,月,日
this.now = new Date();
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}
function getStringDay(str) {
//得到输入框的年,月,日
var str = str.split("-")
this.now = new Date(parseFloat(str[0]), parseFloat(str[1]) - 1, parseFloat(str[2]));
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}
function newCalendar() {
var parseYear = parseInt(document.all.Year.options[document.all.Year.selectedIndex].value);
var newCal = new Date(parseYear, document.all.Month.selectedIndex, 1);
var day = -1;
var startDay = newCal.getDay();
var daily = 0;
if ((today.year == newCal.getFullYear()) && (today.month == newCal.getMonth()))
day = today.day;
var tableCal = document.all.calendar;
var intDaysInMonth = getDays(newCal.getMonth(), newCal.getFullYear());
for (var intWeek = 1; intWeek < tableCal.rows.length; intWeek++)
for (var intDay = 0; intDay < tableCal.rows[intWeek].cells.length; intDay++) {
var cell = tableCal.rows[intWeek].cells[intDay];
if ((intDay == startDay) && (0 == daily))
daily = 1;
if (day == daily) //今天,调用今天的Class
{
cell.style.background = '#6699CC';
cell.style.color = '#FFFFFF';
//cell.style.fontWeight='bold';
}
else if (intDay == 6) //周六
cell.style.color = 'green';
else if (intDay == 0) //周日
cell.style.color = 'red';
if ((daily > 0) && (daily <= intDaysInMonth)) {
cell.innerText = daily;
daily++;
}
else
cell.innerText = "";
}
}
function GetDate(InputBox) {
var sDate;
//这段代码处理鼠标点击的情况
if (event.srcElement.tagName == "TD")
if (event.srcElement.innerText != "") {
sDate = document.all.Year.value + "-" + document.all.Month.value + "-" + event.srcElement.innerText;
eval("document.all." + InputBox).value = sDate;
HiddenCalendar();
}
}
function HiddenCalendar() {
//关闭选择窗口
document.all.Calendar.style.visibility = 'hidden';
}
function ShowCalendar(InputBox) {
var x, y, intLoop, intWeeks, intDays;
var DivContent;
var year, month, day;
var o = eval("document.all." + InputBox);
var thisyear; //真正的今年年份
thisyear = new getToday();
thisyear = thisyear.year;
today = o.value;
if (isDate(today))
today = new getStringDay(today);
else
today = new getToday();
//显示的位置
x = o.offsetLeft;
y = o.offsetTop;
while (o = o.offsetParent) {
x += o.offsetLeft;
y += o.offsetTop;
}
document.all.Calendar.style.left = x + 2;
document.all.Calendar.style.top = y + 20;
document.all.Calendar.style.visibility = "visible";
//下面开始输出日历表格(border-color:#9DBAF7)
DivContent = "<table border='0' cellspacing='0' style='border:1px solid #0066FF; background-color:#EDF2FC'>";
DivContent += "<tr>";
DivContent += "<td style='border-bottom:1px solid #0066FF; background-color:#C7D8FA'>";
//年
DivContent += "<select name='Year' id='Year' onChange='newCalendar()' style='font-family:Verdana; font-size:12px'>";
for (intLoop = thisyear - 35; intLoop < (thisyear + 2); intLoop++)
DivContent += "<option value= " + intLoop + " " + (today.year == intLoop ? "Selected" : "") + ">" + intLoop + "</option>";
DivContent += "</select>";
//月
DivContent += "<select name='Month' id='Month' onChange='newCalendar()' style='font-family:Verdana; font-size:12px'>";
for (intLoop = 0; intLoop < months.length; intLoop++)
DivContent += "<option value= " + (intLoop + 1) + " " + (today.month == intLoop ? "Selected" : "") + ">" + months[intLoop] + "</option>";
DivContent += "</select>";
DivContent += "</td>";
DivContent += "<td style='border-bottom:1px solid #0066FF; background-color:#C7D8FA; font-weight:bold; font-family:Wingdings 2,Wingdings,Webdings; font-size:16px; padding-top:2px; color:#4477FF; cursor:hand' align='center' title='关闭' onClick='javascript:HiddenCalendar()'>S</td>";
DivContent += "</tr>";
DivContent += "<tr><td align='center' colspan='2'>";
DivContent += "<table id='calendar' border='0' width='100%'>";
//星期
DivContent += "<tr>";
for (intLoop = 0; intLoop < days.length; intLoop++)
DivContent += "<td align='center' style='font-size:12px'>" + days[intLoop] + "</td>";
DivContent += "</tr>";
//天
for (intWeeks = 0; intWeeks < 6; intWeeks++) {
DivContent += "<tr>";
for (intDays = 0; intDays < days.length; intDays++)
DivContent += "<td onClick='GetDate(\"" + InputBox + "\")' style='cursor:hand; border-right:1px solid #BBBBBB; border-bottom:1px solid #BBBBBB; color:#215DC6; font-family:Verdana; font-size:12px' align='center'></td>";
DivContent += "</tr>";
}
DivContent += "</table></td></tr></table>";
document.all.Calendar.innerHTML = DivContent;
newCalendar();
}
function isDate(dateStr) {
var datePat = /^(\d{4})(\-)(\d{1,2})(\-)(\d{1,2})$/;
var matchArray = dateStr.match(datePat);
if (matchArray == null) return false;
var month = matchArray[3];
var day = matchArray[5];
var year = matchArray[1];
if (month < 1 || month > 12) return false;
if (day < 1 || day > 31) return false;
if ((month == 4 || month == 6 || month == 9 || month == 11) && day == 31) return false;
if (month == 2) {
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day > 29 || (day == 29 && !isleap)) return false;
}
return true;
}
</script>
</head>
<body>
<center>
<h3>添加学员信息</h3>
<form name="insertStudent" method="post" action="servlet/insertStudent">
<table width="465" border="o.2" cellpadding="0" cellspacing="0" height="333">
<tr class="COL_A">
<td width="15%" class="TABLE_HEAD" align="center">
学号:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="sno" value=""/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="center">
姓名:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="sname" value=""/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="center">
性别:
</td>
<td width="14%" class="TABLE_COL" align="left">
男<input type="radio" name="sex" value="男"/> 女<input type="radio" name="sex" value="女"/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="center">
年龄:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="age"/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="center">
身份证号:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="identify"/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="center">
联系电话:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="tel"/> <br>
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="center">
报考车型:
</td>
<td width="14%" class="TABLE_COL" align="left">
<SELECT NAME="carType">
<OPTION VALUE="A1"> A1
<OPTION VALUE="A2"> A2
<OPTION VALUE="A3"> A3
<OPTION VALUE="B1"> B1
<OPTION VALUE="B2"> B2
<OPTION VALUE="C1"> C1
<OPTION VALUE="C2"> C2
<OPTION VALUE="C3"> C3
<OPTION VALUE="C4"> C4
</SELECT>
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="center">
入学时间:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input name="enrollTime" type="text" id="enrollTime" title="点击选择"
onClick="javascript:ShowCalendar(this.id)" size="20">
<input type="button" name="Submit" value="选 择" onClick="javascript:ShowCalendar('enrollTime')"> <br>
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="center">
离校时间:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input name="leaveTime" type="text" id="leaveTime" title="点击选择"
onClick="javascript:ShowCalendar(this.id)" size="20">
<input type="button" name="Submit" value="选 择" onClick="javascript:ShowCalendar('leaveTime')"> <br>
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="center">
学业状态:
</td>
<td width="14%" class="TABLE_COL" align="left">
<SELECT NAME="scondition">
<OPTION VALUE="学习"> 学习
<OPTION VALUE="结业"> 结业
<OPTION VALUE="退学"> 退学
</SELECT>
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="center">
备注:
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="text" name="stext" value="无"/>
有备注时填写
</td>
</tr>
<tr class="COL_A">
<td width="5%" class="TABLE_HEAD" align="right">
</td>
<td width="14%" class="TABLE_COL" align="left">
<input type="submit" name="Submit" value="提交">
<input type="reset" name="reset" value="重置">
</td>
</tr>
</table>
</form>
</body>
</html>
四、其他事宜
1.更多系统
Java+Swing系统系列实现
Java+JSP系统系列实现
Java+Servlet系统系列实现
Java+SSM系统系列实现
Java+SSH系统系列实现
Java+Springboot系统系列实现
Java+Springboot+H-ui+Maven实现营销管理系统
Java+Springboot+Bootstrap+Maven实现网上商城系统
Java+Springboot+Bootstrap+Maven实现景区旅游管理系统
1.更多JavaWeb系统请关注专栏。
https://blog.csdn.net/helongqiang/category_10020130.html
2.更多JavaSwing系统请关注专栏。
https://blog.csdn.net/helongqiang/category_6229101.html
2.源码下载
Java+Mysql+Servlet+JSP实现驾校学员管理系统
账号:admin
密码:admin
3.运行项目
关注B站:水坚石青
后期有更多干货视频推出!!!
4.权益备注
如有侵权请联系我删除。
5.支持博主
如果您觉得此文对您有帮助,请点赞加关注加收藏。祝您生活愉快!
原文地址:https://blog.csdn.net/helongqiang/article/details/143026880
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!