首页 技术 正文
技术 2022年11月17日
0 收藏 448 点赞 3,014 浏览 2028 个字
//以商品为单位分别存入到各个不同的cookie中,避免因为cookie值过大,导致数据存储失败
$cart_info_one[brand_name] = $parent['brand_name'];
setcookie("cart_info_".$maxindex,serialize($cart_info_one),time()+315360000,'/');//获取cookie中购物车中信息
$cart_info_arr[] = unserialize(stripslashes($_COOKIE["$cookie_name"]));//cookie 购物车信息//主要函数封装方法
/*
* 用户登录后将本地购物车cookie和数据库信息进行同步
* */
function syn_cart_cookie(){
if(empty($_SESSION['user_id'])){
return;
}
$sql = "SELECT goods_id FROM ".$GLOBALS['ecs']->table('cart')." WHERE user_id=".$_SESSION['user_id'];
$cart_goods_id = $GLOBALS['db']->getAll($sql);
foreach ($cart_goods_id as $cart_goods_id_list){
$db_cart_goods_id[] = $cart_goods_id_list['goods_id'];
} $cart_info_arr = cookie_cart_info();//cookie 购物车信息
if(!is_array($cart_info_arr)){
return ;
} foreach ($cart_info_arr as $key=>$cart_info_list){
$cart_info = array();
if(!in_array($cart_info_list['goods_id'], $db_cart_goods_id)){
unset($cart_info_list['rec_id']);
$cart_info_list['user_id'] = $_SESSION['user_id'];
$cart_info_list['session_id'] = $_SESSION['session_id'];
$GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('cart'), $cart_info_list, 'INSERT');
}
}
clean_cookie_cart();//清除购物车cookie信息
}/* 获取cookie中购物车的名称 */
function cookie_cart_index(){
$cookie_keys = array_keys($_COOKIE);
foreach ($cookie_keys as $cookie_keys_list){
if(strpos($cookie_keys_list,'cart_info_') !== false && is_numeric(ltrim($cookie_keys_list,'cart_info_'))){
$index[] = ltrim($cookie_keys_list,'cart_info_');
}
}
if(empty($index)){
return false;
}
return $index;
}/* 获取cookie中购物车最大的索引值 */
function cookie_cart_maxIndex(){
$index = cookie_cart_index();
if($index === false){
return -1;
}
rsort($index);
return $index[0];
}/* 将cookie中的购物车信息合拼为一个二维数组 */
function cookie_cart_info(){
$index = cookie_cart_index();
if($index === false){
return;
}
$cart_info_arr = array();
foreach ($index as $index_info){
$cookie_name = 'cart_info_'.$index_info;
$cart_info_arr[] = unserialize(stripslashes($_COOKIE["$cookie_name"]));//cookie 购物车信息
}
return $cart_info_arr;
}/* 清除cookie中购物车信息 */
function clean_cookie_cart(){
$index = cookie_cart_index();
foreach ($index as $cart_info_dex){
setcookie('cart_info_'.$cart_info_dex,'',time()-100,'/');
}
return true;
}
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,023
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,513
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,360
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,143
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,774
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,853