本人做了一个模拟购物网站,遇到一些问题。
第一个用户选择了A、B、C商品然后第二个用户只选择D商品。点击查看的时候,购物车列出A、B、C、D四种商品,请问哪里出了问题?
<%@ page contentType="text/html;Charset=GB2312" %>
<%@ page import="java.util.*" %>
<HTML><P>这里是结帐处,您的姓名以及选择的商品:
<% String personName=(String)session.getAttribute("customerName");
out.println("<br>您的姓名:"+personName);
Enumeration enumGoods=session.getAttributeNames();
out.println("<br>购物车中的商品:<br>");
while(enumGoods.hasMoreElements())
{ String key=(String)enumGoods.nextElement();
String goods=(String)session.getAttribute(key);
if(!(goods.equals(personName)))
out.println(goods+"<br>");
}
%>
<P>点击超链接,连接到food.jsp的页面,购买食品。
<A HREF="food.jsp"> 欢迎去food.jsp!</A>
<P>点击超链接,连接到main.jsp的页面,去修改姓名。
<A HREF="main.jsp"> 欢迎去main.jsp!</A>
</FONT></BODY></HTML>
第一个用户选择了A、B、C商品然后第二个用户只选择D商品。点击查看的时候,购物车列出A、B、C、D四种商品,请问哪里出了问题?
<%@ page contentType="text/html;Charset=GB2312" %>
<%@ page import="java.util.*" %>
<HTML><P>这里是结帐处,您的姓名以及选择的商品:
<% String personName=(String)session.getAttribute("customerName");
out.println("<br>您的姓名:"+personName);
Enumeration enumGoods=session.getAttributeNames();
out.println("<br>购物车中的商品:<br>");
while(enumGoods.hasMoreElements())
{ String key=(String)enumGoods.nextElement();
String goods=(String)session.getAttribute(key);
if(!(goods.equals(personName)))
out.println(goods+"<br>");
}
%>
<P>点击超链接,连接到food.jsp的页面,购买食品。
<A HREF="food.jsp"> 欢迎去food.jsp!</A>
<P>点击超链接,连接到main.jsp的页面,去修改姓名。
<A HREF="main.jsp"> 欢迎去main.jsp!</A>
</FONT></BODY></HTML>
解决方案 »
- 急求前辈们指导关于一个jsf和jsp的
- struts2的result问题
- 求一个sql语句,条件看里面
- 历时5个月的开发:我的web erp今天开始公开测试,共19个模块160多只程序,erp中融合并实现了各种已知或未知的所有互联网上的主流技术!
- hibernate的hql如果要有多个order by 如何处理呢
- 我在jsp页面中用于动态创造表格的一段代码,单引号嵌套地方不明白,指点一下
- jspsmart
- smartUpload的包放哪里?~
- 在jb下可以运行,可是在ie里怎么就报错呢?大家帮下忙把!
- 请高手解决jbuilder9+weblogic编译错误
- 探讨一下SSH的工作原理,分不在多..共同进步重要!!
- jsp连接mysql Connection refused: connect有源代码,跪求高手帮忙
存和取得时候都用用户名做key
建议最好不要使用SESSION对象来存储数据,它里面都放一些对整个网站来说比较通用的值(例如登陆ID等),而每次WEB请求时最好用REQUEST来传值。
一般业务逻辑做好就没什么问题了
同一个浏览器添加当然会放到一起咯。
另外你购物车的思想不怎么好,最好是建一个购物车类,可以hasMap或者ArrayList保存
再建一个购物车里的事物对象,存放每种商品,其实就是一个bean类
没必要去区分什么用户的,要区分的话就去区分登陆后的用户吧
session.setattribute("userid",buyString);
然后再getattribute(“userid”)就可以了
注意,是2个浏览器!ie7那种1个浏览器的2个标签是不行的!
2个浏览器才会有2个session。
<% String bookName[]=request.getParameterValues("choice");
if(bookName!=null)
{ for(int k=0;k<bookName.length;k++)
{ session.setAttribute(bookName[k],bookName[k]);
}
}
%>
这是对你那些商品的选定