如果了解一下大型网站的购物车怎样做的以下可以为你提供简单的思路:

当用户进行购物时他有可能是本商电的会员或游客(非会员);因此得出两种方案:

推荐教程:PHP视频教程

方案一:(会员)

  用户进行购物时他是我们本商店的会员(数据库中存在该用户的数据),当用户添加商品到购物车的时候我们可以分为两种方法;

方法一

  当用户购买商品添加到购物车时没有进行登陆,如果我们用session来保存用户的数据那么我们就要考虑到这种情况,一旦用户关闭浏览器那么之前所保存的数据就会丢失,因此采用cookie来保存数据。当用户点击结账时,对用户进行登陆验证,然后判断cookie是否存在购买商品的信息。如果存在,就将cookie中的数据保存到mysql中,然后清空cookie信息,最后结账成功。

方法二

  用户添加商品到购物车的时候必须进行登陆验证,然后才能将购买的商品直接保存在数据库,但是你有没有想过用户添加到购物车的商品,他不一定购买,因此我们额外增加了维护成本,但好处是用户能在何时何地都可以看到自己的购物信息。记住方式做任何电商网站,都要从用户的角度考虑。

对比发现,第一种方法比较人性化,用户体验比较好,因此大多数主流电商网站都是采用第一种方法。

方案二:(非会员)

  就是说你购物的时候你有可能不是本网站的会员,但你又想购买商品,那么我们会给你提供一个特殊的帐号(游客)具体实现思路如下:当用户购买通过cookie保存,结账的时候用户又不想注册,我们通过获取他的手机号码和地址,然后后台自动生成一个普通用户,将数据保存在数据库中并清除cookie。

  以上两种方案都是我们日常在购物网站上经常遇到的,因此我们写购物车代码的时候一定要有一个清晰的思路,不然用户体验方面会大打折扣。

更多相关文章

  1. 方便实用的PHP数据库操作类
  2. PHP实现数据分页显示详细操作
  3. php访问数据库的过程
  4. 有关PHP中PDO连接数据库的详细教程与实际操作演示
  5. PHP实时生成并下载超大数据量的EXCEL文件
  6. 利用for循环实现excel中多列数据合并到一个单元格
  7. TP5框架下MySQL通过LOAD DATA INFILE批量导入数据详细操作
  8. 树状数据结构存储方式(查询篇)
  9. 树状数据结构存储方式(CUD 篇)

随机推荐

  1. Netty学习心得 netty服务端和客户端的连
  2. 线程“main”中的异常java.lang.RuntimeE
  3. java中jcom操作excel
  4. JavaWeb-1-IOS或Android客户端上传图片到
  5. 使用超类中的构造函数
  6. execl中设置的格式无法实现
  7. Java ThreadPoolExecutor 线程池调度器
  8. C/C++比java效率高的原因?
  9. 新手求教RandomAccessFile读写文件到底写
  10. Java中double型数组的HashCode产生