1、简单购物车功能笔记Day01(原始方法实现购物车) 21.session:会话 21.1session生命周期 21.2session特点 21.3session_start()注意: 21.4 session文件的存储位置(php.ini) 21.5 session与cookie区别(面试题) 31.6跨页面传参的方法有哪些 32.购物车功能:网上购物 32.1流程 32.2实现购物车功能的方式 32.3 session中存储的数据的结构 32.3.1index.php:商城首页 42.3.2act.php :操纵购物车 52.3.2car.php 购物车页面 6Day02(用TP框架实现购
2、物车) 8一、复习 81.session会话 81.1生命周期 81.2 session特点 81.3 session_start()注意: 81.4存储数据 92跨页面传参(跨页面传递数据) 9二、购物车功能 91.1流程 91.2实现购物车功能的方式 91.3项目目录 91.4具体流程 101.5ThinkPHP配置文件 101.6.数据表 111.7页面重定向(跳转页面) 111.8ThinkPHP遍历数组的标签 112数据库表 11Day01(原始方法实现购物车)1.session:会话1.1session生命周期1、打开浏览器创建2、关闭浏览器销毁1.2session特点1、跨页面2
3、、不跨用户1.3session_start()注意:1、使用session之前,必须先开启会话2、一个页面最多只能开启一次会话3、在session_start()之前不能有任何的输出语句4、php.ini配置文件 session.auto_start = 0 不自动开启 session.auto_start = 1 自动开启 设置session是否自动开启1.4 session文件的存储位置(php.ini);session.save_path = /tmp没有设置:默认存储在系统的临时目录下自己设定session的存储位置:session.save_path = f:/hello存储数据$_
4、SESSION名 = 值;注意:session中可以存储任意类型的数据获得数据$变量 = $_SESSION名;1.5 session与cookie区别(面试题)session与cookie相同:跨页面、不跨用户session与cookie不相同:1、session可以存储任意类型的数据,但cookie只能存储字符串2、cookie产生在服务器端、存储在客户端 session产生在服务器端、存储在服务器端1.6跨页面传参的方法有哪些1、表单提交2、url传参3、cookie4、session5、database2.购物车功能:网上购物2.1流程index.php-act.php-car.php
5、商城首页 操纵购物车 购物车页面2.2实现购物车功能的方式cookie 不用session 速度快、对用户不友好database 速度慢、对用户友好2.3 session中存储的数据的结构$_SESSIONcar = array( 3=array(bookId=3,bookName=值,price=值), 6=array(bookId=6,bookName=值,price=值), 8=array(bookId=8,bookName=值,price=值), 9=array(bookId=9,bookName=值,price=值),);$bookId = 6;$_SESSIONcar$bookId
6、 = NULL2.3.1index.php:商城首页 /点击了购买按扭 function shopBook(bookId) window.location = act.php?bookId=+bookId; 商城首页 编号 名称 单价 操作 ?php $conn = mysql_connect(localhost,root,root); mysql_query(set names utf8); mysql_select_db(shop); $rs = mysql_query(select * from bookInfo); while($row = mysql_fetch_array($rs)
7、 echo ; echo $rowbookId; echo $rowbookName; echo $rowprice; echo ; echo ; /mysql_free_result($rs); /mysql_close($conn);? 2.3.2act.php :操纵购物车$rowbookId, bookName=$rowbookName, price=$rowprice, bookcount=1 ); /2、将产品信息添加到购物车(添加到session中) if($_SESSIONcar$bookId !=null) $_SESSIONcar$bookIdbookcount+; els
8、e $_SESSIONcar$bookId=$bookinfo; /var_dump($bookinfo); /3、跳转到购物车页面 header(location:car.php);2.3.2car.php 购物车页面 我的购物车 function del(bookId) window.location=act.php?act=delete&bookId=+bookId;function clearCar() if(confirm(是否确定清空) window.location=act.php?act=clear; 我的购物车 编号 名称 单价 数量 该商品总价 操作 ?php $total
9、Price = 0;/所有商品总价if($product=null) echo ; echo 您的购物车为空; echo ;else foreach ($product as $v) /print_r($v); $result = $vprice * $vbookcount;/该商品的总价 $totalPrice += $result;/计算所有商品总价 echo ; echo $vbookId; echo $vbookName; echo $vprice; echo $vbookcount; echo $result; echo ; echo ; ? 继续购物 &nb
10、sp; 所有商品总价:¥ 清空购物车 Day02(用TP框架实现购物车)一、复习1.session会话1.1生命周期1、打开浏览器创建2、关闭浏览器销毁1.2 session特点1、跨页面2、不跨用户3、产生在服务器端、存储在服务器端1.3 session_start()注意:1、在使用session之前,必须先开启会话2、同一页面中最多只能出现一次session_start()3、php.ini配置文件1.4存储数据$_SESSION名 = 值;注意:session中可以存储任意类型的数据获得数据$变量 =
11、 $_SESSION名;2跨页面传参(跨页面传递数据)1、表单提交2、url传参3、session4、cookie5、database二、购物车功能1.1流程index.php-act.php-car.php商城首页 操纵购物车 购物车页面1.2实现购物车功能的方式cookie 不用session 速度快、对用户不友好database 速度慢、对用户友好1.3项目目录library-第三方资源包 ThinkPHP jqueryapplication-应用程序目录 default-前台 Common Conf Lang Lib Tpl Runtime admin-后台 Common Conf L
12、ang Lib Tpl Runtimepublic-公用文件 images cssindex.php-前台入口文件admin.php-后台入口文件1.4具体流程 商城首页 购物车页面LoginAction-IndexAction-ActAction-CarAction-OrderAction会员登陆 操纵购物车 订单页面1.5ThinkPHP配置文件1、application/default/Conf/config.php 当前目录的配置文件2、library/ThinkPHP/Conf/convention.php 全局配置文件config.php优先级高于convention.php建议:
13、不要修改convention.phpThinkPHP常量_APP_:项目入口文件的地址(链接地址)_ROOT_:项目根目录(引用其他文件)_ROOT_常量不起作用:在入口文件中重新定义_ROOT_常量define(_ROOT_,/项目名称);define(_ROOT_,/php/mvc/day_05/shop);1.6.数据表userInfo 会员表(LoginAction)bookInfo 产品表(IndexAction)carInfo 购物车表(ActAction、CarAction)orderInfo 订单表(OrderAction)orderDetails 订单明细表(OrderAct
14、ion)1.7页面重定向(跳转页面)1、跳转页面 $this-redirect(控制器/方法);2、跳转页面,并url传参 $this-redirect(控制器/方法,array(名=值.);3、跳转页面,并提示信息 $this-redirect(控制器/方法,array(),时间,信息); $this-redirect(控制器/方法,NULL,时间,信息);1.8ThinkPHP遍历数组的标签1、foreach 下标:$k 值:$v2、volist 序号:$k 值:$v2数据库表create database store;use store;#会员表create table userInfo
15、( userId int auto_increment primary key, userName varchar(20) not null, password varchar(20) not null);insert into userInfo(userName,password)values(张三,123456);insert into userInfo(userName,password)values(李逍遥,123456);insert into userInfo(userName,password)values(林轻侠,123456);#产品表create table bookInf
16、o( bookId int auto_increment primary key, bookName varchar(100) not null, price float default 0, bookTime timestamp default current_timestamp);insert into bookInfo(bookName,price)values(PHP开发指南,67);insert into bookInfo(bookName,price)values(HTML与CSS,53.5);insert into bookInfo(bookName,price)values(L
17、inux详解,79);insert into bookInfo(bookName,price)values(Smarty模板引擎,37);insert into bookInfo(bookName,price)values(MVC设计,89);insert into bookInfo(bookName,price)values(MySQL数据库,60);insert into bookInfo(bookName,price)values(完全开发指南,71);insert into bookInfo(bookName,price)values(ThinkPHP指南,59);#购物车表(代替se
18、ssion)create table carInfo( carId int auto_increment primary key, userId int not null,#购买人 bookId int not null,#产品编号 bookCount int default 0,#个数 carTime timestamp default current_timestamp, foreign key (userId) references userInfo(userId), foreign key (bookId) references bookInfo(bookId);#订单表(存储送货信息
19、)create table orderInfo( orderId varchar(13) primary key,#订单号 totalPrice float default 0,#订单总价 userId int not null,#下订单的人 accpter varchar(50) not null,#收件人 tel varchar(20) not null,#收件人电话 address varchar(500) not null,#送货地址 isPay int default 0,#是否付款 0未 1己 isSend int default 0,#是否发货 0未 1己 isCheck int
20、 default 0,#是否签收 0未 1己 remark varchar(500) null,#订单描述 orderTime timestamp default current_timestamp, foreign key (userId) references userInfo(userId);#订单明细表(记录订单中的商品信息)create table orderDetails( odId int auto_increment primary key, orderId varchar(13) not null, bookId int not null, bookCount int default 0, foreign key (orderId) references orderInfo(orderId), foreign key (bookId) references bookInfo(bookId);select * from userInfo;#会员表select * from bookInfo;#产品表select * from carInfo;#购物车表select * from orderInfo;#订单表select * from orderDetails;#订单明细表
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1