问答详情
源自:8-8 使用Cookie实现保存商品浏览记录

detail页面问题

在同一个detail页面刷新,会出现多个相同的浏览记录

54c3787e0001bcb705000334.jpg

提问者:暴风雨来了 2015-01-24 18:49

个回答

  • callme激流
    2015-02-12 10:46:36

    上面说的不通顺:

    因为你是通过URL传值的,地址栏../detail.jsp?id=6 ,所以每次request.getParameter("id")都能得到值,而list+=request.getParameter("id")+","     这样list每次都会加上 6,显示的时候是用list根据这个字符串从数据库中取数据的,所以刷新一次,list增加一次,自然浏览商品增加一个


  • callme激流
    2015-02-12 10:44:20

    因为你是通过URL传值的,地址栏../detail.jsp?id=6 ,所以每次request.getParameter("id"),所以

    list+=request.getParameter("id")+","     这样list每次都会加上 6,显示的时候是用list根据这个字符串从数据库中取数据的,所以刷新一次,list增加一次,自然浏览商品增加一个

  • 暴风雨来了
    2015-01-26 11:23:49

    <%
       	String list = "";
       	Cookie[] cookies = request.getCookies();
       	if(cookies!=null && cookies.length>0){
      		for(Cookie c:cookies){
       			if(c.getName().equals("ListViewCookie")){
       				list=c.getValue();
       			}
       		}
       	}
       	list+=request.getParameter("id")+ ",";
       	//如果浏览记录超过1000条,清零
       	String[] arr = list.split(",");
       	if(arr!=null && arr.length>0){
       		if(arr.length>=1000){
       			list="";
       		}
       	}
       	Cookie cookie = new Cookie("ListViewCookie",list);
       	response.addCookie(cookie);
     %>


  • 好帮手慕珊
    2015-01-26 09:42:40

    有可能添加cookie的时候是把之前的内容替换了。吧jsp页面的代码贴一下吧