📄 login.jsp
字号:
<!-----filename:login.jsp------学生成绩查询系统处理登录的页面请求------->
<%/*
--------本网页需要接收3个输入参数:usertype,zhanghao,mima--------------
*/%>
<!-------------zhg工作室------2007.6------------->
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>欢迎使用----成绩查询系统</title>
</head>
<%@ include file="jdbc.jsp" %>
<%/*
//凡非登录后的本网页中都不能包含该文件,除非将该文件中验证登录权限的功能去掉
//因为本网页为处理登陆请求的页面,即在调用本网页时尚未登录,故不能使用包含jdbc.jsp文件的方法,因为该文件中含有验证登录信息的代码,否则在登陆页面调用本网页时,将总被认为是未登录请求而阻止调用,从而不能执行本网页自己的功能。
*/%>
<%--
String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String Host = "localhost";
String Port = "1433";
String DBName = "marks_query"; //要操作的数据库
String MssqlURL = "jdbc:microsoft:sqlserver://" + Host + ":" + Port +
";DatabaseName=" + DBName + ";SelectMethod=cursor";
String UserName = "sa"; //数据库服务器登录账号
String PassWord = ""; //登录密码
--%>
<%
String usertype=null,zhanghao=null,mima=null;//记录客户端输入的用户类别,账号和密码
String sql=null;
ResultSet rs = null;
%>
<%
try {
Class.forName(driver);
Connection conn = DriverManager.getConnection(MssqlURL, UserName,PassWord);
// Statement stmt = conn.createStatement(); //由于后面要用到previous()方法,所以不能使用这种形式,而下面的四种都可以。
// Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE );
// Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE );
// Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
//下面分别为从表单接收到的账号及密码
usertype = new String(request.getParameter("usertype").getBytes("ISO8859_1"));
zhanghao = new String(request.getParameter("zhanghao").getBytes("ISO8859_1"));
mima = new String(request.getParameter("mima").getBytes("ISO8859_1"));
if(usertype.equals("student"))
{
sql = "select * from studentlogin where 账号='"+zhanghao+"'";//sql查询语句
rs = stmt.executeQuery(sql);
if(rs.next())//因为数据库login表中账号为主键,所以无需使用while遍历结果集
{
if(mima.equals(rs.getString("密码").trim())) //只需比较密码,因为结果集中只有一条记录且账号已匹配
{
session.setAttribute("usertype",usertype);
session.setAttribute("zhanghao",zhanghao);
%>
<frameset cols="370,*">
<frame src="ok_student.jsp" name="win1">
<frame src="welcome.jsp" name="win2">
</frameset><noframes><body>您的浏览器不支持框架!</body></noframes>
<%
}
else
{
out.println("密码错误!");
%>
<hr><a href="login.html">返回登录</a>
<%
}
}
else
{
out.println("您输入的账号("+zhanghao+")错误!");
%>
<hr><a href="login.html">返回登录</a>
<%
}
}//检查学生用户的权限结束
else if(usertype.equals("teacher"))
{
sql = "select * from teacherlogin where 账号='"+zhanghao+"' and 密码='"+mima+"'";//sql查询语句
rs = stmt.executeQuery(sql);
if(rs.next())//只要数据库教师登录表中查询到账号密码与所输入的相同的结果,就为合法用户
{
session.setAttribute("usertype",usertype);
session.setAttribute("zhanghao",zhanghao);
%>
<frameset cols="370,*">
<frame src="ok_teacher.jsp" name="win1">
<frame src="welcome.jsp" name="win2">
</frameset><noframes><body>您的浏览器不支持框架!</body></noframes>
<%
}
else
{
out.println("您输入的账号("+zhanghao+")不存在,或密码错误!");
%>
<hr><a href="login.html">返回登录</a>
<%
}
}//检查老师用户的权限结束
else //按照管理员对待并验证其权限
{
sql = "select * from managerlogin where 账号='"+zhanghao+"' and 密码='"+mima+"'";//sql查询语句
rs = stmt.executeQuery(sql);
if(rs.next())//只要数据库教师登录表中查询到账号密码与所输入的相同的结果,就为合法用户
{
session.setAttribute("usertype",usertype);
session.setAttribute("zhanghao",zhanghao);
%>
<frameset cols="370,*">
<frame src="ok_manager.jsp" name="win1">
<frame src="welcome.jsp" name="win2">
</frameset><noframes><body>您的浏览器不支持框架!</body></noframes>
<%
}
else
{
out.println("您输入的账号("+zhanghao+")不存在,或密码错误!");
%>
<hr><a href="login.html">返回登录</a>
<%
}
}
rs.close();
stmt.close();
conn.close();
}
catch(Exception e)
{
out.println("出现错误!!!请检查各相关软件的设置!!!<p>下面的出错提示可供参考:<br><font color='red'>" + e+"</font></p><br><br>----ZHG工作室------2007.6 ");
response.sendRedirect("quit.jsp");//若要查看异常原因,则必须屏蔽这句,否则直接转到其他页,而不能显示异常类型.
}
%>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -