php 框架 购物车类,PHP购物车类_PHP教程

PHP购物车类

PHP购物车类:

因为需求中只记录产品的类型,还有编号..比如食物,,然后什么编号,,这样子.所以没有记录产品的数量..要用的自己改进一下就行了.

//setcookie("cart","s:26,45,4,4523423|d:17,7,27,26|e:12,13,123,43|f:34");

//cartAdd('e','167');

//getProInfo('z');

//delProInfo('f','26');

/**

* ***********

* 用于记录,修改,删除COOKIE的类,用于我的计划的本地信息的更改

* LIQUAN

*/

class cart

{

/*

实现COOKIES购物车

@type 产品类型

@id 产品编号

COOKIES的结果为 type1:3,45,23|type2:34,234,34|type3:344,124

*/

function cartAdd(type,id)

{

//如果第一次使用,则重新设置COOKIES

if(!isset(_COOKIE["cart"]))

{

setcookie("cart",type.":".id);

}

else

{

//如果不是第一次,则先取出来

cartStr=_COOKIE["cart"];

//把结果分开

cartarray=split("\|",cartStr);

//用于判断类型是否存在,初始不存在,为零

istype=0;

//产品编号列表

id_list;

//循环产品

for (i=0;i

{

//获取产品名和产品编号列表

list(carttype,product)=split(":",cartarray[i]);

//如果已经存在的产品与要保存的相如,把isType改为1,说明产品已经存在

if (type==carttype)

{

istype=1;

//获取产品的编号列表

id_list=product;

//中断循环

break ;

}

}

//如果产品不存在

if(istype==0)

{

//往COOKIES里面加入新产品和产品的编吃

cartStr=cartStr."|".type.":".id;

}

else

{

//把产品列表分开成数组

id_list=split("\,",id_list);

//标识产口编号是否存在,初始不存在

isId=0;

//循环产品编号

for(i=0;i

{

//如果要保存的产品编号已尼存在

if(id==id_list[i])

{

//标识已存在.退出循环

isId=1;

break;

}

}

//这里只做产品类型和产品编号,所以相同的不加数量,直接不外理

//如果相关类型的产品编号不存在,则加上新的编号

if(isId!=1)

{

cartStr=str_replace(type.":",type.":".id.",",cartStr);

//cartStr=str_replace('d:','d:2,',cartStr);

}

}

setcookie("cart",cartStr);

print_r(_COOKIE["cart"]);

//setcookie("cart","",time()-100);

}

return ;

}

//返回相应的产品列表

/*

@type产品类型

*/

function getProInfo(type)

{

//获取购物车COOKIES

cartStr=_COOKIE["cart"];

//匹配COOKIES字符,获取产品列表

preg_str=type.":((\d+),)*(\d+)";

//echo "

";

preg_match("/".preg_str."/",cartStr,proStr);

//echo proStr[0];

//exit();

list(protype,product)=split(":",proStr[0]);

return product;

//pro_list=split(",",product);

//返回产品列表

//return pro_list;

// print_r(pro_list);

}

/*

*删除产品

*@type产品类型名

*@id 产品编号

*/

function delProInfo(type,id)

{

//获取购物车COOKIES

cartStr=_COOKIE["cart"];

//匹配COOKIES字符,获取产品列表

preg_str=type.":((\d+),)*(\d+)";

//echo "

";

preg_match("/".preg_str."/i",cartStr,proStr);

//只有能找到要删除的类型,才进行下面操做

if(proStr)

{

//查询删除的类型里面是否有要删除的ID

isproId=strstr(proStr[0],id);

//如果有,才进行下面操作

if(isproId)

{

//更新后的产品字符串

upproStr;

//更新后的所有最新的产品COOKIES字符

newCartStr;

//查询要删除的产品是否有多个

preg_match("/,/",proStr[0],isend);

//如果有,进行下面操作

if(isend)

{

//查询要删除的产品后面是否还有产品

preg_match("/".id.",/",proStr[0],isdot);

//如果有,删除后面的逗号

if(isdot)

{

upproStr=str_replace(id.",","",proStr[0]);

}

//如果没有,删除前面的逗号

else

{

upproStr=str_replace(",".id,"",proStr[0]);

}

//更新要插入COOKIES里面的字符串

newCartStr=str_replace(proStr[0],upproStr,cartStr);

}

//如果没有多个,则直接删除该类产品

else

{

//判断该类产品后面还有没有产品

preg_match("/".proStr[0]."\|/",cartStr,issu);

//如果有,则删除后面的分格符

if(issu)

{

newCartStr=str_replace(proStr[0]."|","",cartStr);

}

//如果没有,则删除前面的分格符

else

{

newCartStr=str_replace("|".proStr[0],"",cartStr);

}

}

setcookie("cart",newCartStr);

}

}

}

function deletecart()

{

setcookie("cart","",time()-100);

}

}

?>

http://www.bkjia.com/PHPjc/845130.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/845130.htmlTechArticlePHP购物车类 PHP购物车类: 因为需求中只记录产品的类型,还有编号..比如食物,,然后什么编号,,这样子.所以没有记录产品的数量..要用的自己...

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:php中文网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如下是一个基于PHP的微信小程序购物车实例代码,用于展示购物车的功能: 1. 创建数据库: 首先,需要创建一个数据库来存储商品和购物车相关的信息。可以使用MySQL或其他数据库管理软件来创建一个数据库,并创建以下两个表格: - 商品表(goods):包含字段id、name、price等用于存储商品信息的字段。 - 购物车表(cart):包含字段id、user_id、goods_id、quantity等,用于存储购物车信息的字段。 2. PHP后端代码: 接下来,需要创建一个用于处理微信小程序购物车相关操作的PHP后端代码。可以使用某个PHP开发框架(如Laravel)或者纯PHP来实现,以下是一个简单的示例代码: ```php // 引入数据库连接 require_once 'db.php'; // 获取购物车列表 function getCartList($user_id) { global $dbh; $query = 'SELECT cart.id, goods.name, goods.price, cart.quantity FROM cart INNER JOIN goods ON cart.goods_id = goods.id WHERE cart.user_id = :user_id'; $stmt = $dbh->prepare($query); $stmt->bindParam(':user_id', $user_id); $stmt->execute(); $result = $stmt->fetchAll(PDO::FETCH_ASSOC); return $result; } // 添加商品到购物车 function addToCart($user_id, $goods_id, $quantity) { global $dbh; $query = 'INSERT INTO cart(user_id, goods_id, quantity) VALUES(:user_id, :goods_id, :quantity)'; $stmt = $dbh->prepare($query); $stmt->bindParam(':user_id', $user_id); $stmt->bindParam(':goods_id', $goods_id); $stmt->bindParam(':quantity', $quantity); $stmt->execute(); return $dbh->lastInsertId(); } // 从购物车中移除商品 function removeFromCart($cart_id) { global $dbh; $query = 'DELETE FROM cart WHERE id = :cart_id'; $stmt = $dbh->prepare($query); $stmt->bindParam(':cart_id', $cart_id); $stmt->execute(); return $stmt->rowCount(); } // 示例代码的使用 $user_id = 1; $goods_id = 2; $quantity = 3; // 添加商品到购物车 $cart_id = addToCart($user_id, $goods_id, $quantity); echo '已添加到购物车,cart_id为: ' . $cart_id; // 获取购物车列表 $cartList = getCartList($user_id); echo json_encode($cartList); // 从购物车中移除商品 $deletedRows = removeFromCart($cart_id); echo '已从购物车中移除商品,删除的行数为: ' . $deletedRows; ``` 这个示例代码提供了获取购物车列表、添加商品到购物车以及从购物车中移除商品的基本功能。你可以根据具体需求进行修改和扩展。提供的代码只是一个简单的示例,实际应用中可能需要进行额外的安全性和错误处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值