实验六用户注册功能的纯JSP 设计与实现一、实验目的掌握如何使用JSP 与form 表单交互获取用户注册信息;掌握request 内建对象的使用;response 对象设置头信息刷新refresh。
二、实验环境PC 系列微机,CPU1.2G 以上,内存256 以上,Windows XP,MyEclipse6.5。
三、实验步骤1、在MyEclipse 中创建Web 项目jsp(1)设计用户注册页面register.html 和接收用户注册页面数据进行处理的页面register_check.jsp。
注意form 表单的中文乱码问题。
这2 个页面显示格式如下:(2)response 对象设置头信息刷新refresh编写2 个JSP 页面,第一个responseRefresh.jsp 页面2 秒钟后跳转到第二个页面useOut.jsp。
(3)编写3 个页面:redirect1.html,redirect2.jsp,redirect3.jsp,redirect1.html 中的请求参数有userName,提交到redirect2.jsp 后再重定向到redirect3.jsp,在redirect3.jsp 中尝试取得四、实验报告1 提交用户注册页面register.html 和接收用户注册页面数据进行处理的页面register_check.jsp 的代码。
<%String msg = "", uname = "", email = "", ulogo = "";if (request.getParameter("msg") != null) {msg = request.getParameter("msg");uname = request.getParameter("uname");email = request.getParameter("email");ulogo = request.getParameter("ulogo");}%><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>log</title><!--<script language="JavaScript">function portrayal(){var por='<table><tr><td style=';por=por+'"font-family:'+"宋体"+';font-size:40px;filter:glow(color=0000ff,strengh=0)width:a uto;height:auto;position:relative;">';por=por+'欢迎来到注册空间</td></tr></table>' document.write(por);}</script>--><script type="text/js" src="js/log.js"></script><script src="js/common.js"></script><!--reg.js中包含本页面使用的JS检测函数--><script src="js/reg.js"></script><!--Ajax检测函数--><script src="js/ajax.js"></script><style type="text/css">.fontcss{filter:dropshadow(color=#AAAAAA,offx=2,offy=2,positive=false);}.spancss{font-size:32px;font-style: italic;}</style></head><body ><center style="padding-top:00px; "><div class="warning" ><%=msg%></div><form action=" log-title.jsp"method="post"onsubmit="return check()"><tablestyle="background-image:url(img/57.jpg);background-repeat:rep eat-x;" width="40%" cellspacing="10" ><tr><td colspan="2">请写入个人信息</td></tr><tr><td> 用户名:</td><td><input type="text" name="uname" value="<%=uname%>"onblur="chkuser()"/></td></tr><tr><td> 密 码:</td><td><input type="password" name="pw"/></td></tr><tr><td> 验证密码;</td><td><inputtype="password" name="pw2"/></td></tr><tr><td> 性 别:</td><td><input type="radio" value="男" name="sex"/>男<input type="radio" size="17"value="女"name="sex"/>女</tr><tr><td>Email:</td><td><input type="text" name="email"value="<%=email%>" /></td></tr><tr><td colspan="2" style=" right:70px" height="70px"><tr><td class="ltd">选择头像</td><td style="vertical-align:middle"><input type="hidden" name="ulogo" id="ulogo" value="<%=ulogo%>"/><img src="<%= ulogo.equals("") ?"images/head/space_noface.gif" : ulogo%>" id="hlogo"name="hlogo" /><br><input type="radio" name="s1"onclick="selectImg()"/>选择<input type="radio" name="s1"onclick="uploadImg()"/>上传</td></tr><tr><td>验证码</td><td><input name="urand"size="4" /><img border=0 src="image.jsp"></td></tr><tr><td><input type="submit" name="submit" id="submit"value="确定" /> <input type="reset" name="reset"id="reset" value="重置"/></td></tr></form></center></body></html>2 提交responseRefresh.jsp 和useOut.jsp 的代码<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>JSP Page</title></head><body><%String uname,pw;uname=request.getParameter("uname");pw=request.getParameter("pw");if(uname==null||uname.equals("")){out.print("请输入用户名");response.setHeader("refresh", "3;url=logo.jsp");}if(pw==null||pw.equals("")){out.print("请输入密码");response.setHeader("refresh", "3;url=logo.jsp");return;}boolean valid=false;String driverClass="org.gjt.mm.mysql.Driver";Stringurl="jdbc:mysql://localhost:3306/ordersystem?useUnicode=true&&characte rEncoding=utf-8";String username="root";String password="123";Connection con=null;Statement st=null;ResultSet rs=null;try{String sql="select * from users where uname='"+uname+"'";Class.forName(driverClass );con=DriverManager.getConnection(url,username,password);st=con.createStatement();rs=st.executeQuery(sql);if(rs!=null){if(rs.next())valid=pw.equals( rs.getString("pw"));}}catch(Exception e){e.printStackTrace();}finally{try{if(rs!=null){ rs.close();rs=null;}if( st!=null){ st.close();st=null;}if(con!=null){ con.close();con=null;}}catch(Exception e){ e.printStackTrace();}}if(valid){session.setAttribute("username",uname);out.println("登陆成功");response.setHeader("refresh","3;url=index.jsp");}else{out.print("用户名或密码错");response.setHeader("refressh","3;url=logo.jsp");}%></body></html>。