中易网

ecshop 怎样显示商品浏览历史

答案:2  悬赏:30  
解决时间 2021-03-16 06:28
ecshop 怎样显示商品浏览历史
最佳答案
ecshop的商品浏览历史是这样生成的:
访问商品的时候,经过goods.php,开始检查是否存在cookie 'ECS[history]',
若存在,取出该cookie的值,将其拆分为数组,将当前商品的id插入这个数组的开头位置,移除数组中重复的元素,在当前浏览历史中的商品数量大于系统设置的数量时,不断删除数组中的最后一个元素直到当前浏览历史中的商品数量不再大于系统设置的数量(这样可以保证浏览历史中的商品数量始终是一个固定值),将最终得到的新数组用,拼接为一个字符串,保存在cookie 'ECS[history]'中。
若不存在,保存当前商品id到cookie 'ECS[history]'中。

显示商品浏览历史的时候,通过$_COOKIE['ECS']['history']得到浏览历史里面的商品id,自然就可以通过这些id得到商品信息,至于具体如何显示,请查看history.lbi和lib_insert.php里面的insert_history方法。
全部回答
goods.php中 if (!empty($_cookie['ecs']['history'])) { $history = explode(',', $_cookie['ecs']['history']); array_unshift($history, $goods_id); $history = array_unique($history); while (count($history) > $_cfg['history_number']) { array_pop($history); } setcookie('ecs[history]', implode(',', $history), gmtime() + 3600 * 24 * 30); } else { setcookie('ecs[history]', $goods_id, gmtime() + 3600 * 24 * 30); }
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
超越汽修在什么地方啊,我要过去处理事情
威远县连界镇有全峰快递吗?
英文女名:缇娜用英语怎么写啊
请问简化是什么意思?
弹性法和塑性法计算板的区别
长乐市江田供销合作社在什么地方啊,我要过去
这维生素c可以去斑吗,我今年17岁一天可以吃
中专毕业读成人大学容易毕业吗?是不是要参加
阿莲发型设计室我想知道这个在什么地方
bmp280芯片bosch是哪个国家的
超凡蜘蛛侠中本叔叔的电话留言
如何在音乐教学中渗透德育教育
铂金耳环一般多少克
涌口小学这个地址在什么地方,我要处理点事
excel表格内容不能更改,不能复制怎么做到
推荐资讯
宋有贵中医诊所在什么地方啊,我要过去处理事
批发零售鲜鸡蛋在什么地方啊,我要过去处理事
视频编辑是可超频的i3还是不可超频的i5好?
阿里巴巴交易勋章2a可以参加什么活动
中国人寿微信绑定保单提示非法手机号
帮我想几个辩论赛的问题。刁钻一点的. 或者不
我在东莞长安,想买钓具去钓鱼,不知道哪里能
男 出生:公元1981年7月28日8时(阳历) 生辰八
芦柴湖酒店在哪里啊,我有事要去这个地方
新益鲜面条店这个地址在什么地方,我要处理点
洒洒娱乐怎么去啊,有知道地址的么
下载了冰点文库下载器,电脑中毒了
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?