小练- 河北重大技术征集

login.html

<html>
<head>
<title>登陆</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
<!--
body {
    margin-left: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    background-image: url(login/loginbg.jpg);
    background-repeat: repeat-x;
}
-->
</style>
<script type="text/javascript" src="js/jquery-1.4.js"></script>
<script type="text/javascript" src="login/refresh.js"></script>
<!-- 回车换行 -->
<script language="javascript" for="document" event="onkeydown">

if(event.keyCode==13 && event.srcElement.type!='button' && event.srcElement.type!='submit' && event.srcElement.type!='reset' && event.srcElement.type!='textarea' && event.srcElement.type!='')

event.keyCode=9; //Tab的键值为9 Enter的键值为13

</script>

<script type="text/javascript">
    
function test()
{
    alert("如果丢失密码,请与0311-85813216电话联系!");
    }
</script>
<script type="text/javascript">
    function MM_swapImgRestore() { //v3.0
        var i, x, a = document.MM_sr;
        for (i = 0; a && i < a.length && (x = a[i]) && x.oSrc; i++)
            x.src = x.oSrc;
    }
    function MM_preloadImages() { //v3.0
        
        
        var d = document;
        if (d.images) {
            if (!d.MM_p)
                d.MM_p = new Array();
            var i, j = d.MM_p.length, a = MM_preloadImages.arguments;
            for (i = 0; i < a.length; i++)
                if (a[i].indexOf("#") != 0) {
                    d.MM_p[j] = new Image;
                    d.MM_p[j++].src = a[i];
                }
        }
    }

    function MM_findObj(n, d) { //v4.01
        var p, i, x;
        if (!d)
            d = document;
        if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
            d = parent.frames[n.substring(p + 1)].document;
            n = n.substring(0, p);
        }
        if (!(x = d[n]) && d.all)
            x = d.all[n];
        for (i = 0; !x && i < d.forms.length; i++)
            x = d.forms[i][n];
        for (i = 0; !x && d.layers && i < d.layers.length; i++)
            x = MM_findObj(n, d.layers[i].document);
        if (!x && d.getElementById)
            x = d.getElementById(n);
        return x;
    }

    function MM_swapImage() { //v3.0
        var i, j = 0, x, a = MM_swapImage.arguments;
        document.MM_sr = new Array;
        for (i = 0; i < (a.length - 2); i += 3)
            if ((x = MM_findObj(a[i])) != null) {
                document.MM_sr[j++] = x;
                if (!x.oSrc)
                    x.oSrc = x.src;
                x.src = a[i + 2];
            }
    }
    function realodpage(){
        //alert(document.getElementById("shuaxin").src);
        $("#shuaxin").attr("src","login/randCode.jsp?"+Math.random());
    }
    function re(){
        setTimeout("realodpage()",10);
    }
    re();
</script>
</head>
<body bgcolor="#FFFFFF"
    onLoad="MM_preloadImages('login/login000_06.jpg','login/loging000_07.jpg')">
    
    <!-- Save for Web Slices (待切.psd) -->
    <table width="795" height="475" border="0" align="center"
        cellpadding="0" cellspacing="0" id="__01">
        <tr>
            <td colspan="5"><img src="login/login_01.jpg" width="795"
                height="159" alt=""></td>
        </tr>
        <tr>
            <td rowspan="2"><img src="login/login_02.jpg" width="269"
                height="174" alt=""></td>
            <td bgcolor="#CFE5F2"><img src="login/login_03.jpg" width="66"
                height="115" alt=""></td>
            <td colspan="2" bgcolor="#D0E6F3"><table width="100%"
                    height="116" border="0" cellpadding="0" cellspacing="0">
                    <tr>
                        <td colspan="2" align="left" valign="bottom"><INPUT
                            NAME="LoginName" TYPE="text" CLASS="STYLE1"
                            STYLE="width: 180px; height: 17px; border: #336699 1px solid"
                            tabindex="1" MAXLENGTH="26" id="username"></td>
                            
                    </tr>
                    <tr>
                        <td height="32" colspan="2" align="left" valign="bottom"><INPUT
                            NAME="LoginName" TYPE="password" CLASS="STYLE1"
                            STYLE="width: 180px; height: 17px; border: #336699 1px solid"
                            tabindex="1" MAXLENGTH="26" id="userpassword"></td>
                    </tr>
                    <tr>
                        <td width="50%" height="29" align="left" valign="bottom"><INPUT
                            NAME="LoginName" TYPE="text" CLASS="STYLE1"
                            STYLE="width: 100px; height: 17px; border: #336699 1px solid"
                            tabindex="1" MAXLENGTH="26" id="randcode"></td>
                        <td width="50%" align="left" valign="bottom"><img
                            src="login/randCode.jsp" id='shuaxin' width="50" height="25">
                    </td>
                    </tr>
                    <tr>
                        <td height="30" colspan="1" align="left" valign="bottom">&nbsp;</td>
                    </tr>
                    
                    
                </table></td>
            <td rowspan="2"><img src="login/login_05.jpg" width="262"
                height="174" alt=""></td>
        </tr>
        <tr>
            <td colspan="2"><a href="#" onMouseOut="MM_swapImgRestore()"
                onMouseOver="MM_swapImage('Image12','','login/loging000_06.jpg',1)"><img
                    src="login/login_06.jpg" name="Image12" width="135" height="59"
                    border="0" onClick="IMG1_onclick2()"></a></td>
            <td><a href="#" onMouseOut="MM_swapImgRestore()"
                onMouseOver="MM_swapImage('Image13','','login/loging000_08.png',1)"><img
                    src="login/login_09.png" name="Image13" width="129" height="59"
                    border="0" onClick="window.location='register.html'"></a></td>
        </tr>
        <tr>
            <td colspan="5"><img src="login/login_08.jpg" alt="" width="795"
                height="141" border="0" usemap="#Map"></td>
        </tr>
        <tr>
            <td><img src="login/&#x5206;&#x9694;&#x7b26;.gif" width="269"
                height="1" alt=""></td>
            <td><img src="login/&#x5206;&#x9694;&#x7b26;.gif" width="66"
                height="1" alt=""></td>
            <td><img src="login/&#x5206;&#x9694;&#x7b26;.gif" width="69"
                height="1" alt=""></td>
            <td><img src="login/&#x5206;&#x9694;&#x7b26;.gif" width="129"
                height="1" alt=""></td>
            <td><img src="login/&#x5206;&#x9694;&#x7b26;.gif" width="262"
                height="1" alt=""></td>
        </tr>
        <tr>
           <td colspan="5" align="center">
              <a href="download/Browser.zip">浏览器兼容问题说明</a>
           </td>
        </tr>
    </table>
    
    <!-- End Save for Web Slices -->

<map name="Map"><area shape="rect" coords="484,16,558,34" href="#"  onclick="test()" target="_self">
</map></body>
<script type="text/javascript">

    function IMG1_onclick2() {
        var user = document.getElementById("username");
        var pwd = document.getElementById("userpassword");
        var randcode = document.getElementById("randcode");
        var url = "dengluServlet?user=" + escape(user.value) + "&pwd="
                + escape(pwd.value) + "&randcode=" + escape(randcode.value);
        
        if (user.value == "") {
            alert("用户名不能为空");
            
        } else if (pwd.value == "") {
            alert("密码不能为空");
            
        } else if (randcode.value == "") {
            alert("验证码不能为空");
            
        } else if (user.value.length > 20 || user.value.length < 6) {
            alert("用户名小于6位或大于20位");

        } else if (pwd.value.length > 20 || pwd.value.length < 6) {
            alert("密码小于6位或大于20位");

        } else if (!isNum(randcode.value)) {
                alert("验证码只能由数字组成!");
                randcode.value = "";
        } else if (CheckCode(user.value) && CheckCode(pwd.value)
                    && CheckCode(randcode.value)) {
                alert("有特殊字符请重新填写!");
                user.value = "";
                pwd.value = "";
                randcode.value = "";
        }else {
                window.location.href = url;
        }    
    }
    function CheckCode(s) //有特殊字符为true  
    {
        var containSpecial = RegExp(/[(\ )(\~)(\!)(\#)(\$)(\%)(\^)(\&)(\*)(\()(\))(\-)(\_)(\+)(\=)(\[)(\])(\{)(\})(\|)(\\)(\;)(\:)(\')(\")(\,)(\.)(\/)(\<)(\>)(\?)(\)]+/);
        return (containSpecial.test(s));
    }
    function isNum(str){
        for (ilen = 0; ilen < str.length; ilen++) {
                if (str.charAt(ilen) < '0' || str.charAt(ilen) > '9') {
                       return false;
                    }
                }
            return true;
    }
</script>
</html>

dengluservlet。java

package Servlet;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import Bean.User;
import Dao.Dao;

/**
 * Servlet implementation class dengluServlet
 */
@WebServlet("/dengluServlet")
public class dengluServlet extends HttpServlet {
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 登录
        String LoginName=req.getParameter("user");
        String LoginPass=req.getParameter("pwd");
        String LoginVerify=req.getParameter("randcode");
        
        System.out.println("LoginName:"+LoginName);
        System.out.println("LoginPass:"+LoginPass);
        System.out.println("LoginVerify:"+LoginVerify);
        
        User user=Dao.query();
        String name=user.getUsername();
        String password=user.getPassword();
        
        System.out.println("数据库name:"+name);
        System.out.println("数据库password:"+password);

        if(!(LoginName.equals(name))) {
            req.getRequestDispatcher("wrong1.jsp").forward(req, resp);
        }
        else if(!(LoginPass.equals(password))) {
            req.getRequestDispatcher("wrong2.jsp").forward(req, resp);
        }
        else {
            HttpSession session=req.getSession();
            session.setAttribute("user", user);
            resp.setHeader("refresh","2;URL=main.jsp");
            //resp.sendRedirect("main.jsp"); 
        }
    }

}

main.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>系统主界面</title>
</head>
<body>
<h1>系统主界面</h1>
<div align="center">
    <div class="a">
            <a href="zhengjixuqiu.jsp">征集需求</a>
    </div>
    <div class="a">
            <a href="all.jsp">浏览需求</a>
    </div>
    <div class="a">
            <a href="shenghe.jsp">审核需求</a>
    </div>
    <div class="a">
            <a href="zhuce.jsp">用户注册</a>
    </div>
        <div class="a">
            <a href="password.jsp">修改密码</a>
    </div>
</div>
</body>
</html>

register.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>河北省重大技术需求征集问卷调查系统</title>
        <!--框架必需start-->
        <link href="css/import_basic.css" rel="stylesheet" type="text/css"/>
        <link href="skins/sky/import_skin.css" rel="stylesheet" type="text/css" id="skin" themeColor="blue"/>
        <script type="text/javascript" src="js/jquery-1.4.js">
        </script>
        <script type="text/javascript" src="js/bsFormat.js">
        </script>
        <!--框架必需end--><!--引入弹窗组件start-->
        <script type="text/javascript" src="js/attention/zDialog/zDrag.js">
        </script>
        <script type="text/javascript" src="js/attention/zDialog/zDialog.js">
        </script>
        <!--引入弹窗组件end--><!--修正IE6支持透明png图片start-->
        <script type="text/javascript" src="js/method/pngFix/supersleight.js">
        </script>
        <!--修正IE6支持透明png图片end-->
        <script>
            function bookmarksite(title, url){
                if (window.sidebar) // firefox
                    window.sidebar.addPanel(title, url, "");
                else 
                    if (window.opera && window.print) { // opera
                        var elem = document.createElement('a');
                        elem.setAttribute('href', url);
                        elem.setAttribute('title', title);
                        elem.setAttribute('rel', 'sidebar');
                        elem.click();
                    }
                    else 
                        if (document.all)// ie
                            window.external.AddFavorite(url, title);
            }
        </script>
        
    </head>
    <body>
        <div id="mainFrame">
            <!--头部与导航start-->
            <div id="hbox">
                <div id="bs_bannercenter">
                    <div id="bs_bannerleft">
                        <div id="bs_bannerright">
                            <div class="bs_banner_logo">
                            </div>
                            <div class="bs_banner_title">
                            </div>
                            <div class="bs_nav">
                                <div class="bs_navleft">
                                    <li>
                                        <span id="username">
                                        </span>您好!今天是
                                        <script>
                                            var weekDayLabels = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六");
                                            var now = new Date();
                                            var year = now.getFullYear();
                                            var month = now.getMonth() + 1;
                                            var day = now.getDate()
                                            var currentime = year + "年" + month + "月" + day + "日 " + weekDayLabels[now.getDay()]
                                            document.write(currentime)
                                        </script>
                                    </li>
                                    <div class="clear">
                                    </div>
                                </div>
                                <div class="bs_navright">
                                    <span class="icon_no hand" onclick='top.Dialog.confirm("确定要退出系统吗",function(){window.location="exitServlet"});'>退出系统</span>
                                    <div class="clear">
                                    </div>
                                </div>
                                <div class="clear">
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
            <!--头部与导航end-->
            <table width="100%" cellpadding="0" cellspacing="0" class="table_border0">
                <tr>
                    <!--左侧区域start-->
                    <td id="hideCon" class="ver01 ali01">
                        <div id="lbox">
                            <div id="lbox_topcenter">
                                <div id="lbox_topleft">
                                    <div id="lbox_topright">
                                        <div class="lbox_title">
                                            操作菜单
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div id="lbox_middlecenter">
                                <div id="lbox_middleleft">
                                    <div id="lbox_middleright">
                                        <div id="bs_left">
                                            <IFRAME scrolling="no" width="100%" frameBorder=0 id=frmleft name=frmleft src="leftPages/accorditionRegister.html" allowTransparency="true">
                                            </IFRAME>
                                        </div>
                                        <!--更改左侧栏的宽度需要修改id="bs_left"的样式-->
                                    </div>
                                </div>
                            </div>
                            <div id="lbox_bottomcenter">
                                <div id="lbox_bottomleft">
                                    <div id="lbox_bottomright">
                                        <div class="lbox_foot">
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </td>
                    <!--左侧区域end-->
                    <!--中间栏区域start-->
                    <td class="main_shutiao">
                        <div class="bs_leftArr" id="bs_center" title="收缩面板">
                        </div>
                    </td>
                    <!--中间栏区域end-->
                    <!--右侧区域start-->
                    <td class="ali01 ver01" width="100%">
                   <div class="header" id="head">
  <div class="title">注册</div>
    
</div>

    
            <!-- 头部提示信息 -->
            <div class="logD logDtip">
                <p class="p1">注册</p>
            </div>
            <!-- 输入框 -->
        <form action="UserServlet?method=add" method="post" onsubmit="return check()">
                <div class="lgD">
                用户名:
                <input type="text" id="username" name="username"
                    placeholder="输入用户名" />
            </div>
            
            <div class="lgD">
                密码:
                <input type="password" id="password" name="password"
                    placeholder="输入用户密码" />
            </div>
            <div class="lgD">
                重复密码:
                <input type="password" id="rpassword" name="rpassword"
                    placeholder="确认用户密码" />
                
            </div>


             <div class="lgD">
                联系电话:
                <input type="text" id="phonenumber" name="phonenumber"
                    placeholder="联系电话" />
                
            </div>
            <div class="lgD">
                工作单位:
                <input type="text" id="workplace" name="workplace"
                    placeholder="工作单位" />
                
            </div>
            <div class="logC">
            
                <a target="_self"><button type="submit"  class="b" >提 交</button></a>
            </div>
        </form>
    <script type="text/javascript">
        function check() {
            var username = document.getElementById("username");;
            var password = document.getElementById("password");
            var rpassword = document.getElementById("rpassword");
            
            //非空
            if(username.value == '') {
                alert('账号不能为空');
                username.focus();
                return false;
            }
            if(password.value == '') {
                alert('密码不能为空');
                password.focus();
                return false;
            }
            if(rpassword.value == '') {
                alert('确认密码不能为空');
                rpassword.focus();
                return false;
            }
            if(rpassword.value!= password.value) {
                alert('两次密码不一致');
                rpassword.focus();
                return false;
            }
            
            
        }
    </script>
    <button onclick="window.location.href='login.html'">返回</button>
                </td>    
                    <!--  <div id="rbox">
                            <div id="rbox_topcenter">
                                <div id="rbox_topleft">
                                    <div id="rbox_topright">
                                        <div class="rbox_title">
                                            操作内容
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div id="rbox_middlecenter">
                                <div id="rbox_middleleft">
                                    <div id="rbox_middleright">
                                        <div id="bs_right">
                                            <IFRAME scrolling="no" width="100%" frameBorder=0 id=frmright name=frmright src="zhu/zhuce.jsp" allowTransparency="true">
                                            </IFRAME>
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div id="rbox_bottomcenter">
                                <div id="rbox_bottomleft">
                                    <div id="rbox_bottomright">
                                    </div>
                                </div>
                            </div>
                        </div>
                    </td> --> 
                    <!--右侧区域end-->
                </tr>
            </table>
            <!--尾部区域start-->
            <div id="fbox">
                <div id="bs_footcenter">
                    <div id="bs_footleft">
                        <div id="bs_footright">
                            河北省重大技术需求征集系统
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <!--尾部区域end-->
        <!--浏览器resize事件修正start-->
        <div id="resizeFix">
        </div>
        <!--浏览器resize事件修正end-->
        <!--载进度条start-->
        <div class="progressBg" id="progress" style="display:none;">
            <div class="progressBar">
            </div>
        </div>
        <!--载进度条end-->
    </body>
    <script>
        
        $(document).ready(function(){
            var username = GetRequest();
            $("#username").html(username);
        });
        function GetRequest(){
            var url = location.search; //获取url中"?"符后的字串
            if (url.indexOf("?") != -1) { //判断是否有参数
                var str = url.substr(1); //从第一个字符开始 因为第0个是?号 获取所有除问号的所有符串
                strs = str.split("="); //用等号进行分隔 (因为知道只有一个参数 所以直接用等号进分隔 如果有多个参数 要用&号分隔 再用等号进行分隔)
                wjid = decodeURI(strs[1]);
                return decodeURI(strs[1]); //直接弹出第一个参数 (如果有多个参数 还要进行循环的)
            }
        }
        

    </script>
</html>

 

 userservlet。java

package Servlet;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.PageContext;

import Bean.User;
import Dao.Dao;

/**
 * Servlet implementation class UserServlet
 */
@WebServlet("/UserServlet")
public class UserServlet extends HttpServlet {
    
    private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UserServlet() {
        super();
        System.out.println("zai  userservlet");
        // TODO Auto-generated constructor stub
    }
    Dao dao = new Dao();
    
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setCharacterEncoding("utf-8");
        String method = req.getParameter("method");
        if ("add".equals(method)) {
            add(req, resp);
        }  else if ("search".equals(method)) {
            search(req, resp);
        } 
    }
    
    
    
    
    private void search(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException {
        // TODO Auto-generated method stub
        req.setCharacterEncoding("utf-8");
        String username = req.getParameter("username");
        String password = req.getParameter("password");
        String rpassword = dao.search(username);
        
        
        
        if(password.equals(rpassword)) {
            
            req.getRequestDispatcher("index.jsp").forward(req,resp);
        }
        else {
            
            req.getRequestDispatcher("Login.jsp").forward(req,resp);
        }
        
    }
    
    
    
    private void add(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException {
        // TODO Auto-generated method stub
        String username = req.getParameter("username");
        String password = req.getParameter("password");
        String phonename = req.getParameter("phonename");
        String workplace = req.getParameter("workplace");
        System.out.println("zai  servlet");
        User user= new User(username,password,phonename,workplace);
        if(dao.add(user)) {
            req.setAttribute("message", "注册成功!");
            System.out.println("dao的方法:");
            resp.setHeader("refresh","2;URL=login.html");
            //resp.setContentType("/login.html;charset=UTF-8");
        }else {
            req.setAttribute("message", "账号重复,请重新输入!");
            req.getRequestDispatcher("register.html").forward(req, resp);
        }
        
    }


    

}

user.java

package Bean;
//实体类
public class User {
    private int id;//数据库中显示顺序
    private String username;
    private String password;
    private String phonenumber;
    
    private String workplace;
    
    public String getPhonenumber() {
        return phonenumber;
    }
    public void setPhonenumber(String phonenumber) {
        this.phonenumber = phonenumber;
    }
    public String getWorkplace() {
        return workplace;
    }
    public void setWorkplace(String workplace) {
        this.workplace = workplace;
    }
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
   
   public User(int id, String username, String password, String phonenumber, String workplace) {
        super();
        this.id = id;
        this.username = username;
        this.password = password;
        this.phonenumber = phonenumber;
        this.workplace = workplace;
    }
public User(String username,String password, String phonenumber, String workplace) {
       
       this.username = username;
       this.password = password;
       this.phonenumber = phonenumber;
        this.workplace = workplace;
       }
public User() {
    // TODO 自动生成的构造函数存根
}
}

 

 

其他的连接数据库都是一样的在这里就不逐一发了

posted @ 2019-03-02 17:31  fsdx  阅读(524)  评论(0编辑  收藏  举报