jsp第6次作业
1.登陆
输入用户名密码,判断用户名和密码相同,登陆成功,session中保存用户的用户名,进入主页main.jsp,主页有一个退出按钮,点击,回到登陆页login.jsp。要求:退出登录后,如果在浏览器直接输入主页main.jsp,访问不了,直接跳到登陆页。
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>ye1.jsp</title> </head> <body> <form action="ye2.jsp" method="post" name="ye1"> 请输入账号:<input name="name" type="text"/><br/> 请输入密码:<input name="password" type="password"/><br/> <input type="button" value="登录" onclick="denglu()"/> <script type="text/javascript"> function denglu(){ if(ye1.name.value==""){ alert("账号不能为空!"); return; } if(ye1.password.value==""){ alert("密码不能为空!"); return; } ye1.submit(); } </script> </form> </body> </html> 复制代码 复制代码 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>ye2.jsp</title> </head> <body> <% String name=request.getParameter("name"); String password=request.getParameter("password"); if(name.equals(password)){ session.setAttribute("yhm", name); request.getRequestDispatcher("main.jsp").forward(request, response); }else{ request.getRequestDispatcher("no.jsp").forward(request, response); } %> </body> </html> 复制代码 复制代码 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>main.jsp</title> </head> <body> <% String name=(String) session.getAttribute("yhm"); if(name==null){ out.print("未登录,3秒后跳转登录页!"); response.setHeader("refresh", "3;url=ye1.jsp"); } else{ out.print("用户名:"+name+"登陆成功!"); %> <form action="tuichu.jsp" method="post" > <input type="submit" value="退出登录" /> </form> <% } %> </body> </html> 复制代码 复制代码 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>tuichu.jsp</title> </head> <body> <h3>退出成功,3秒后返回登录页!</h3> <% session.invalidate(); response.setHeader("refresh", "3;url=ye1.jsp"); %> </body> </html> 复制代码 复制代码 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>no.jsp</title> </head> <body> <h3>登陆失败,3秒后返回登陆页</h3> <% session.invalidate(); response.setHeader("refresh", "3;url=ye1.jsp"); %> </body> </html>
2.购物车
和上一题一起,在main.jsp中做一个商品展示,里面显示3个商品名和价格 ,每一个后面有一个加入购物车按钮,main.jsp中有一个按钮(或者超链接)可以显示购物车show.jsp 。(选作:在购物车show.jsp中加删除按钮删除商品)
复制代码 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'index.jsp' starting page</title> </head> <body bgcolor=#FFccff> <% String uname = (String) session.getAttribute("uname"); //如果他是空,说明没登陆,直接访问该页面了 if (uname == null) response.sendRedirect("login.jsp"); %> 欢迎你<%=uname%><br> <br> <a href="tuichu.jsp">退出登录</a> <hr> 商品展示: <br> 欢迎进入水果商城: <br> <hr> <form action="show.jsp" method="post"> 请选择要加入购物车的商品:<br> <input type="checkbox" name="list" value="荔枝"> 荔枝 9.99/kg<br> <input type="checkbox" name="list" value="桃子"> 桃子 6.88/kg<br> <input type="checkbox" name="list" value="西瓜"> 西瓜 7.99/kg<br> <hr> <input type="submit" value="加入购物车"> </form> </body> </html> 复制代码 复制代码 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'index.jsp' starting page</title> </head> <body bgcolor=#eeccft> <h2>购物车添加的商品有:</h2> <% request.setCharacterEncoding("utf-8"); String listName[] = request.getParameterValues("list"); if (listName == null) { out.print("购物车为空!"); } else { for (int i = 0; i < listName.length; i++) { out.print("(" + (i + 1) + ")" + listName[i] + "<br>"); } } %> </body> </html>