模拟京东网上商城--商品浏览历史

原创 2012年03月26日 10:39:01

  最近很忙,之前答应朋友写个商品浏览历史的文章。


上面是我本人做过的一个真实商业商城的历史浏览功能

 历史浏览的功能[cookie存储商品id]

1、限定显示个数比如为5个

2、最新浏览的产品置顶

3、如果浏览的商品已经存在cookie中,则删除存在的商品,并且将现在的商品置顶

4、如果商品个数已经是5个了,则去掉最后一个商品,将新商品置顶

为了满足以上功能 采用LinkedList可以灵活的处理以上的业务需求

public static string BuildHistory(string productId)
{
  string history=string.Empty;
  HttpCookieCollection cookies=HttpContext.Current.Request.Cookies;//获取cookie集合
  for(int i=0;cookies!=null&&i<cookies.Count;i++)
  {
    if(cookies[i].Name=="history")
    {
      history=HttpUtility.UrlDecode(cookies[i].Value);
    }
  }
  if(history==null)
  {
    return HttpUtility.UrlDecode(productId);
  }
  LinkedList<string> list=new LinkedList<string>(history.Split(','));
  if(list.Contains(productId))//如果当前商品id已经存在cookie中
  {
    list.Remove(productId);
  }
  else
  {
     if(list.Count>=5) 
     {
        list.RemoveLast();//如果个数已经达到最大值,则删除最后一个
     }
  }
  list.AddFirst(productId);//最新的商品置顶
  
  StringBuilder sb=new  StringBuilder();
  foreach(string proId in list)
  {
    sb.Append(proId+",");
  }
  return sb.ToString(0,sb.Length-1).ToString();//返回cookie值
} 


构建history的cookie,调用以上的方法-->将当前的浏览的商品Id 这些就不写了

【SSH网上商城项目实战29】使用JsChart技术在后台显示商品销售报表

这个项目终于接近尾声了,注册功能我就不做了,关于注册功能我的另一篇博客详细的介绍了一下注册的表单验证,可以直接把功能加到本项目中,修改一下相关的跳转即可,就不再做了。另外,目前这个项目只有action...
  • eson_15
  • eson_15
  • 2016年05月26日 14:06
  • 9201

【SSH网上商城项目实战28】使用Ajax技术局部更新商品数量和总价

昨天把项目部署了一下,玩了玩,今天完善了一下购物车中修改商品数量就能局部更新相应的总价的功能,大家都知道这得用Ajax实现,我之前也没学Ajax,刚好借助这个小功能,去简单学习一下Ajax的知识。  ...

商品导航--仿电器网上商城导航jquery代码

http://www.w3c.org/tr/1999/rec-html401-19991224/loose.dtd"> http://www.w3.org/1999/xhtml"> 苏宁电器网...
  • ysydao
  • ysydao
  • 2013年06月19日 13:28
  • 2669

【SSH网上商城项目实战09】添加和更新商品类别功能的实现

目录(?)[+]添加商品类别 1 添加类别的UI设计2 添加类别的逻辑实现更新商品类别1 更新类别的UI设计2 更新类别的逻辑实现         上一节我们做完了查询和删除商品的功能,这一节我们做一...

【SSH网上商城项目实战10】商品类基本模块的搭建

前面我们完成了与商品类别相关的业务逻辑,接下来我们开始做具体商品部分。 1. 数据库建表并映射Model         首先我们在数据库中新建一张表,然后使用逆向工程将表映射成Model类,表如下:...
  • eson_15
  • eson_15
  • 2016年05月11日 09:03
  • 8715

【SSH网上商城项目实战28】使用Ajax技术局部更新商品数量和总价

目录(?)[+]问题的分析Ajax请求的实现1 注册事件2 判断数据合法性3 发送Ajax请求后台的更新   昨天把项目部署了一下,玩了玩,今天完善了一下购物车中修改商品数量就能局部更...

网上商城—管理员删除商品

管理员删除商品(图书、服装、电器、零食)【要删除商品时只需要给出相应商品的ID(主键)即可】先上本人的项目相应图片: 功能描述: 当以管理员的身份登录时,页面跳转到相应的管理商铺(shopke...
  • lmb55
  • lmb55
  • 2015年04月26日 21:36
  • 923

【SSH网上商城项目实战11】查询和删除商品功能的实现

目录(?)[+]查询商品功能的实现删除商品功能的实现        在第8节我们完成了查询和删除商品类别的功能,那么现在实现查询和删除商品的功能就很好做了,原理和第8节一模一样,只是修改一些参数,比如...

【SSH网上商城项目实战08】查询和删除商品类别功能的实现

目录(?)[+]添加更新删除和查询功能的前台实现 DataGrid类别查询的实现 DataGrid类别删除的实现        上一节我们完成了使用DataGrid显示所有商品信息,这节我们开始添加几...

第六天:浪迹天涯网上商城(1.0版本)--后台管理系统--实现商品类目选择功能

1、需求 在商品添加页面,点击“选择类目”显示商品类目列表: 2、实现步骤 1、按钮添加点击事件,弹出窗口,加载数据显示tree 2、将选择类目的组件封装起来,通过TT.iniit()初始化...
  • pfnie
  • pfnie
  • 2017年11月12日 17:05
  • 215
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:模拟京东网上商城--商品浏览历史
举报原因:
原因补充:

(最多只允许输入30个字)