购物车

2017-04-13  本文已影响0人  Songzh

前言

购物车这一部分的内容非常重要。涉及了很多知识点。

涉及到的知识点

这里我们只大致说一下,具体代码分析请自行去github下载
下载链接https://github.com/songzh96/Provence.git

知识点分析

Cookie是什么?

Cookie实际上是一小段的文本信息。客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie。客户端浏览器会把Cookie保存起来。当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务器。服务器检查该Cookie,以此来辨认用户状态。服务器还可以根据需要修改Cookie的内容。

Laravel中的cookie

Laravel会加密所有已创建的cookie信息,并附加上授权码,当客户端擅自修改cookie信息时,该cookie将被废弃,从而保证安全性。
我们这里主要使用的cookie是存放购物车商品列表信息,
通过Request实例上的cookie方法获取cookie数据,
该方法可以接收一个参数名返回对应的cookie值,如果不传入参数,默认返回所有cookie值
这里我们就是通过这个方法来获取购物车中的信息。

存入cookie.png 得到Cookie.png

Session是什么?

Session是另一种记录客户状态的机制,不同的是Cookie保存在客户端浏览器中,而Session保存在服务器上。客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上。这就是Session。客户端浏览器再次访问时只需要从该Session中查找该客户的状态就可以了。

在 Laravel 中主要有两种方式处理 Session 数据:全局的辅助函数 session,或者通过 Request 实例。
这里我们使用的是通过Request实例。

存入session.png 获取session.png

PHP字符串处理

Laravel中间件

简介
HTTP 中间件为过滤进入应用的 HTTP 请求提供了一套便利的机制。例如,Laravel内置了一个中间件来验证用户是否经过认证,如果用户没有经过认证,中间件会将用户重定向到登录页面,否则如果用户经过认证,中间件就会允许请求继续往前进入下一步操作。
当然,除了认证之外,中间件还可以被用来处理更多其它任务。比如:CORS 中间件可以用于为离开站点的响应添加合适的头(跨域);日志中间件可以记录所有进入站点的请求。

本案例的使用
创建中间件.png Paste_Image.png Paste_Image.png

功能介绍
购物车中商品的添加和删除
同步购物车

功能分析
购物车中商品的添加和删除

首先在前端注册个点击事件(添加),当用户点击后就通过ajax传值到后端,
后端首先要判断用户是否已登录,
如果登录就和数据库同步处理,
若未登录将产品先从cookie中取数据然后进行字符串处理,
如果是cookie中已有的产品那么就+1,
如果不是就需要将新产品存放到数组中,最后再将cookie更新一下
删除逻辑大致差不多。

同步购物车

上一篇 下一篇

猜你喜欢

热点阅读