⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 login.jsp

📁 数据库实验报告-web学生成绩管理系统(web查分系统)
💻 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 + -