第八周作业
1.登陆
输入用户名密码,判断用户名和密码相同,登陆成功,session中保存用户的用户名,进入主页main.jsp,主页有一个退出按钮,点击,回到登陆页login.jsp。要求:退出登录后,如果在浏览器直接输入主页main.jsp,访问不了,直接跳到登陆页。
输入用户名密码,判断用户名和密码相同,登陆成功,session中保存用户的用户名,进入主页main.jsp,主页有一个退出按钮,点击,回到登陆页login.jsp。要求:退出登录后,如果在浏览器直接输入主页main.jsp,访问不了,直接跳到登陆页。
1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <!DOCTYPE HTML> 3 <html> 4 <head> 5 <meta charset="utf-8"> 6 <title></title> 7 </head> 8 <body> 9 <% 10 if (session.getAttribute("uname") == null) { 11 response.sendRedirect("login.jsp"); 12 } else { 13 String uname = (String) session.getAttribute("uname"); 14 out.print("欢迎" + uname + "</br>"); 15 %> 16 <a href="logout.jsp">退出登录</a> 17 <% 18 } 19 %> 20 </body> 21 </html>
1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <!DOCTYPE HTML> 3 <html> 4 <head> 5 <meta charset="utf-8"> 6 <title></title> 7 </head> 8 <body> 9 <form name="formName" action="dologin.jsp" method="post"> 10 11 <input name="uname"><br> 12 <input type="password" name="password"><br> 13 <input type="button" value="登录" onclick="login()"> 14 </form> 15 <script type="text/javascript"> 16 function login(){ 17 if(formName.uname.value==""||formName.password.value==""){ 18 alert("账号或密码不能为空!"); 19 return; 20 } 21 formName.submit(); 22 } 23 </script> 24 </body> 25 </html>
1 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> 2 <% 3 request.setCharacterEncoding("utf-8"); 4 %> 5 <!DOCTYPE HTML> 6 <html> 7 <head> 8 <title></title> 9 </head> 10 <body> 11 <% 12 String uname = request.getParameter("uname"); 13 String password = request.getParameter("password"); 14 if (uname.equals(password)) { 15 session.setAttribute("uname", uname); 16 request.getRequestDispatcher("main.jsp").forward(request, 17 response); 18 } else { 19 %> 20 <script type="text/javascript"> 21 alert("登录失败"); 22 </script> 23 <% 24 request.getRequestDispatcher("login.jsp").forward(request, 25 response); 26 } 27 %> 28 </body> 29 </html>
1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <!DOCTYPE HTML> 3 <html> 4 <head> 5 <meta charset="utf-8"> 6 <title></title> 7 </head> 8 <body> 9 <%session.invalidate(); %> 10 <script type="text/javascript"> 11 window.location.href="main.jsp"; 12 </script> 13 </body> 14 </html>
2.购物车
和上一题一起,在main.jsp中做一个购物车,里面显示3个商品名和价格 每一个后面有一个加入购物车按钮,main.jsp中有一个按钮(或者超链接)可以显示购物车。(选作:在购物车中加删除按钮删除商品)
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'main.jsp' starting page</title> </head> <body> <br> <form action="a.jsp"> <hr> 是否加入购物车 <br> <input name="item" type="checkbox" value="jiugui">花生 5元<br> <input name="item" type="checkbox" value="qiaqia">瓜子 6元<br> <input name="item" type="checkbox" value="baisuishan">矿泉水 3元<br> <hr> <input type="submit" value="加入购物车"> </form> <a href="loginout.jsp">退出登录</a> </body> <html>
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%> <% 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> <base href="<%=basePath%>"> <title>My JSP 'a.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> </head> <% String uname = (String) session.getAttribute("uname"); //如果他是空,说明没登陆,直接访问该页面了 if (uname == null) { response.sendRedirect("login.jsp"); } %> <body> This is my JSP page. <br> </body> <html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'buy.jsp' starting page</title> </head> <body> <h2>购物车</h2> <% request.setCharacterEncoding("utf-8"); String itemName[] = request.getParameterValues("item"); if (itemName == null) { out.print("购物车为空"); } else { for (int k = 0; k < itemName.length; k++) { out.print("(" + (k + 1) + ")" + itemName[k] + "<br>"); } } %> </body> </html>