zoukankan      html  css  js  c++  java
  • jsp第六周作业

    1.安装MySQL数据库,建立用户表 uid uname upwd 并插入3条数据

    2.制作jsp登录页面 login.jsp 提交到dologin.jsp,使用jdbc连数据库,判断输入的用户名密码是否存在

    3.如果存在,把用户名保存在SESSION中,跳转到welcome.jsp,welcome.jsp中读取session中的用户名,显示欢迎你xxx

    4.若不存在,跳到登录页面。

    
    

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>

    
    

    <html>
    <head>
    <title>登陆界面</title>
    <link rel="stylesheet" href="./layui/css/layui.css">
    <link rel="stylesheet" href="./css/adminLogin.css">
    </head>
    <body>

    
    

    <div class="wrap">
    <img src="img/1.jpg" class="imgStyle">
    <div class="loginForm">
    <form action="get.jsp" method="POST">
    <div class="logoHead">
    </div>
    <div class="usernameWrapDiv">
    <div class="usernameLabel">
    <label>用户名:</label>
    </div>
    <div class="usernameDiv">
    <i class="layui-icon layui-icon-username adminIcon"></i>
    <input id="loginUsername" class="layui-input adminInput" type="text" name="name"
    placeholder="输入用户名">
    </div>
    </div>
    <div class="usernameWrapDiv">
    <div class="usernameLabel">
    <label>密码:</label>
    </div>
    <div class="passwordDiv">
    <i class="layui-icon layui-icon-password adminIcon"></i>
    <input id="loginPassword" class="layui-input adminInput" type="password" name="password"
    placeholder="输入密码">
    </div>
    </div>
    <div class="usernameWrapDiv">
    <div class="usernameLabel">
    <label>验证码:</label>
    </div>
    <div class="cardDiv">
    <input id="loginCard" class="layui-input cardInput" type="text" name="card" placeholder="输入验证码">
    </div>
    <div id="code_box" class="codeDiv">r52Q

    
    

    </div>
    </div>
    <div class="usernameWrapDiv">
    <div class="submitLabel">
    <label>没有账号?<a href="#" id="loginRegister">点击注册</a></label>
    </div>
    <div class="submitDiv">
    <input id="loginBtn" type="submit" class="submit layui-btn layui-btn-primary"
    value="登录"></input>
    </div>
    </div>
    </form>
    </div>
    </div>

    
    

    <script>
    var code_box = document.getElementById("code_box");

    
    

    function refreshCode() {

    
    

    //62个字符 随机选择4位
    var code = '0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM',
    char = '',
    result = '';

    
    

    for (var i = 0; i < 4; i++) {

    
    

    //随机选择一位 (0,61) 写出0到61的随机的索引数字
    var code_index = Math.round(Math.random() * 61);
    //得到随机的索引 取出随机地字符
    var char = code[code_index];
    //随机取出的字符 存在几个相同重复的问题 ,而且对于字母,不能区分大小写。
    // 避免重复的思路是:取出字符之后,和最后的result对比一下,看看里边是不是已经存在了,如果存在本次循环就终止,进行下一次
    if (result.toUpperCase().indexOf(char.toUpperCase()) > -1)
    //indexOf() == -1 说明结果里边没有要找的字符 那么 > -1 就是 里边有重复的字符
    {
    i--;
    //为什么会 --? 因为如果条件成立,那么本轮循环就结束进行下一轮循环(自然i就加1了),那么本轮本应该取出的字符就没有了
    //到最后会少一个字符 缺席
    continue; //终止本轮循环 进行下一轮
    }
    result += char;
    }
    code_box.innerHTML = result;
    }
    //点击事件
    code_box.onclick = refreshCode;
    </script>
    <%
    String name="";
    if(!session.isNew()){
    name=(String)session.getAttribute("name");
    if (name==null){
    name="";
    }
    }
    %>
    </body>
    </html>

     
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <%@ page language="java" import="java.util.*"%>
    <%@ page import ="java.sql.*"%>
    <html>
    <head>
        <title>内容收集界面</title>
    </head>
    <body>
    <%--<%--%>
    
    <%--    String name=request.getParameter("name");--%>
    <%--    String password=request.getParameter("password");--%>
    <%--    if(name.equals("zs")&&password.equals("123")){--%>
    <%--%><p>welcome<%=name%></p><%--%>
    <%--}else{--%>
    <%--%><p>登陆失败</p><%--%>
    <%--    }--%>
    <%--%>--%>
    <%
        PreparedStatement pre = null;
        Statement sql;
        ResultSet rs;
        request.setCharacterEncoding("utf-8");
        String Name = request.getParameter("name");  //获取输入的用户名
        String Ps = request.getParameter("password");  // 密码
        Name.trim();
        Ps.trim();
        request.setCharacterEncoding("utf-8");
    
        Class.forName("com.mysql.cj.jdbc.Driver");
        // 建立连接
        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/jsp_db?serverTimezone=GMT", "root", "135790");
        sql =conn.createStatement();
        String SQL = "select * from jsp_data where uname=? and upassword=?";
        pre=conn.prepareStatement(SQL);
        pre.setString(1,Name);
        pre.setString(2,Ps);
        rs=pre.executeQuery();
        if (rs.next()) {
            String name = rs.getString(1);
            session.setAttribute("name",name);
    %><p>欢迎登陆:<%=name%></p><%
          }else{%> <p>输入错误,请重新登录</p><a href="index.jsp"><button>返回登录界面</button></a>
    <%
          }
          rs.close();
        sql.close();
        conn.close();
        %>
    
    </body>
    </html>

  • 相关阅读:
    Delux DLVB13摄像头在Windows Vista下的使用
    Windows在删除文件时怎么不确认了?
    Tornado启动仿真器时出现错误:error : simulator failed to initialize before timeout.
    VxWorks下使用双向链表的小例子
    MPI错误:提示XXX Credentials for yyy rejected connecting to XXX
    运行Google CTemplate首页的例子遇到_CrtIsValidHeapPointer异常
    拖延不是毛病,是你不够强大
    BNF范式含义和基本用法
    堆栈的区别
    永不抱怨
  • 原文地址:https://www.cnblogs.com/menfanbo/p/14641301.html
Copyright © 2011-2022 走看看