20150417--购物车

一、购物车的需求分析

购物车数据存储的位置

(1)session里面,关闭网站,下次访问则没有购物车的数据

(2)数据库里面,存储到数据库里面,要求用户必须登录,购买成功,可以把数据给清空。

(3)存储到cookie里面,再次访问网站,能够看到以前存储到购物车里面的数据、

京东的做法,如果用户没有登录则把购物车数据存储到cookie里面,

如果用户登录了,则会把购物车数据存储到数据库里面,并把未登录存储到cookie里面的的商品给移动到数据库里面。

未登录时:要把数据存储到cookie里面。

要存储哪些数据,一般是商品的id属性购买数量

价格不需要存储,

如何存储属性,使用goods_attr表里面的 id来完成存储。

构造一个数组,用于存储到cookie里面。

数组的键是’goods_id’-‘goods_attr_id’,属性id多个用逗号隔开

数组的值是购买的数量

array(

‘商品的id-属性的id’=>购买的数量

)

array(

‘1-2,6’=>10

‘2-9,12’=>20

)

存储到数据库里面如何设计表呢?

create table it_cart(

id smallint unsigned primary key auto_increment,

goods_id smallint not null comment ‘商品的id‘,

goods_attr_id varchar(32) not null default ‘‘ comment ‘goods_attr表属性的id多个用逗号隔开‘,

goods_number tinyint not null comment ‘购买数量‘,

user_id smallint not null comment ‘登录用户的id‘

)engine myisam charset utf8;

二、添加到购物车

1、新建一个cart模型,在里面添加addCart的方法。

2、新建一个Cart的控制器,并添加addCart的方法,完成商品添加到购物车。

(1)修改商品详情页面的表单,准备提交的数据

(2)接收数据,准备提交

$goods_attr_id = $_POST[‘goods_attr_1’].’,’. $_POST[‘goods_attr_7’]

三、购物车列表页面

1、在cart模型里面添加一个购物车列表页面。

2、在cart控制器里面添加一个lst方法,取出购物车列表,拷贝对应的列表页面,并完成遍历

颜色:白色<br/>内存:4G

三、修改购物车

1、分别给两张图片一个class属性,便于选择添加事件

2、给class=”add”属性的img添加事件,

思路:把数据通过 ajax传递到后台,完成数据的修改。

要传送哪些数据?

商品的id(goods_id),属性(goods_attr_id),

在购物车列表添加一个商品id的隐藏域便于取出商品的 id.

3、在lst页面中的js 代码:

4、在cart模型里面定义一个修改(添加数量)购物车的函数,

5、在购物车控制器里面添加updatecart的方法,完成ajax的修改购物车。

四、当用户登录后,把cookie里面的数据移动到数据库里面。

1在cart模型里面定义一个方法,用于把cooki数据移动到数据库

2、登录成功后,调用该方法,

五、获取购物车里面商品数量和总的价格

在购物车的模型里面添加一个方法,用于获取购物车商品的数量和总的价格

在index控制器里面添加一个方法用于获取购物车数据

在首页 栏目页  和  商品的详情页面    和购物车列表页面调用

六、清空购物车

在购物车模型里面添加一个函数用于清除购物车

在购物车里面调用该函数,完成清空数据

时间: 2024-10-29 19:09:47

20150417--购物车的相关文章

微信 小程序组件 加入购物车全套 one js

// pages/shop/shop.js Page({ /** * 页面的初始数据 */ data: { carts: [ { teaname: '冠军乌龙茶-150g', image: '../../imgs/car/shopping_pic_1.png', num: '1', price: '1200.00', sum: '1200.0', selected: true, cid: 1001, }, { teaname: '18年老茶-150g', image: '../../imgs/c

微信 小程序组件 加入购物车全套 one wxml

<!--pages/shop/shop.wxml--> <view wx:if="{{hasList}}"> <view class="container carts-list"> <view wx:key="isshop" wx:for="{{carts}}" class="carts-item" > <view class="carts-c

easymall项目的商品删除,前台商品分页,商品详情,购物车模块

简单的挑选一下昨天所学的重点知识模块,以备后续的复习 一.购物车模块1.1购物车两种实现的区别:!!!!!!!! 用session保存  缺点:浏览器关闭,session失效时保存在session中购物信息将会消失  后续优化,将购买的信息除了保存在session中以外,还要将购物的信息保存在cookie中,这样  就解决了浏览器关闭购买商品信息丢失的问题(但是解决不了跟换电脑信息丢失的问题)  优点:不用操作数据库,可以减少数据库访问压力 数据库中:  缺点:只用登录的用户才能添加购物车   

java web 开发 购物车功能的实现

为了方便自己以后复习,所以写的比较仔细,记录下自己的成长..... 既然是做购物车,那么前提条件是首先需要一系列商品,也就是要建一个实体,这里建了一个商品表. 通过查询在浏览器上显示 基本显示已经做好了,现在进入我们的重头戏,Servlet 点击放入购物车时,将访问Servlet 购物车代码 1 package com.servlet; 2 3 import java.io.IOException; 4 import java.io.PrintWriter; 5 import java.util

利用JSP编程技术实现一个简单的购物车程序

实验二   JSP编程 一.实验目的1. 掌握JSP指令的使用方法:2. 掌握JSP动作的使用方法:3. 掌握JSP内置对象的使用方法:4. 掌握JavaBean的编程技术及使用方法:5. 掌握JSP中数据库编程方法: 二.实验要求 : 利用JSP编程技术实现一个简单的购物车程序,具体要求如下. (1)用JSP编写一个登录页面,登录信息中有用户名和密码,分别用两个按钮来提交和重置登录信息. (2)编写一个JSP程序来处理用户提交的登录信息,如果用户名为本小组成员的名字且密码为对应的学号时,采用J

webform之session传值(临时数据的存储)与扩展属性 --(购物车练习)

页面传值:1.QueryString传值在源页面写:Response.Redirect("Main.aspx?uid="+uid+"&pwd="+pwd);在目标页面:Request["uid"].ToString();2.Session *****特点:可以存任何东西,每个用户都会生成一个特定的Session,Session是存储在服务中的,一般默认存储20分钟,20分钟之后过期用法:在登录页面:Session["uid&qu

购物车前端开发

作为一名不在软件公司工作的软件工程师,不仅要会写后台代码(PHP/JAVA/SQL...),还是兼顾前端工程师的工作(html/javascript/css...).下面就来分享一个在实际工作项目中使用到的购物车的前端开发. 这里分享的仅仅是针对购物车的操作(产品数量的增加减少,删除购物车中产品项),假设购物车中已经放有若干产品.闲话少说,先上两张效果图. HTML代码如下:这里使用到了JQuery1.11和bootstrap3 . <!DOCTYPE html> <html> &

实用的php购物车程序

实用的php教程购物车程序以前有用过一个感觉不错,不过看了这个感觉也很好,所以介绍给需要的朋友参考一下. <?php//调用实例require_once 'cart.class.php';session_start();if(!isset($_SESSION['cart'])) { $_SESSION['cart'] = new Cart;}$cart =& $_SESSION['cart']; if( ($_SERVER['REQUEST_METHOD']=="POST"

java web 程序---购物车选商品,购买,付款

虚函数使用的时机 为什么虚函数不总是适用? 1. 虚函数有事会带来很大的消耗: 2. 虚函数不总是提供所需的行为: 3. 当我们不考虑继承当前类时,不必使用虚函数. 必须使用虚函数的情况: 1. 当你想删除一个表面上指向基类对象,实际却是指向派生类对象的指针,就需要虚析构函数. java web 程序---购物车选商品,购买,付款,布布扣,bubuko.com

Python 购物车

Python 购物车 需求 用户名和密码存放于文件中,格式为:xxx|xxx 启动程序后,先登录,登录成功则让用户输入工资,然后打印商品列表,失败则重新登录,超过三次则退出程序 允许用户根据商品编号购买商品 用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒 可随时退出,退出时,打印已购买商品和余额 流程图 Python代码实现 1 #! /usr/bin/env python 2 # -*- coding: utf-8 -*- 3 # 商城购物车 4 product_list = [ 5